【每日学点鸿蒙知识】Web请求支持Http、PDF展示、APP上架应用搜索问题、APP备案不通过问题、滚动列表问题

1、HarmonyOS Web不支持http请求,只支持https?

Web组件http请求失败,改成https是好的,是否可以通过配置打开http的请求

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-web-V5#mixedmode

mixedMode(mixedMode: MixedMode)设置是否允许加载超文本传输协议(HTTP)和超文本传输安全协议(HTTPS)混合内容,默认不允许加载HTTP和HTTPS混合内容。

2、HarmonyOS 自定义View中展示PDF,并调用自定义View中的一些接口方法?

刷新界面,获取当前页码,获取文档总页数,获取文PDF档上的手写数据,跳页(跳转到文档的某页)

目前的思路是定义一个struct DJContentView,但是在DJContentView中定义一些方法,外层页面中无法调用定义的这些方法(比如点页面顶部的跳页按钮,怎么才能调用DJContentView中定义的gotoPage(page)方法)

可以定义一个controller类,在controller类中定义和子组件中类型相同的方法,在子组件中将实际封装的方法给到controller。父组件在使用时,new一个controller对象然后转入子类中,在父组件中调用controller对应的方法即可。参考代码:

复制代码
@Component
struct Child {
  @State private text: string = '初始值'
  private controller: ChildController = new ChildController();

  aboutToAppear() {
    if(this.controller) {
      //给controller对应的方法赋值
      this.controller.changeText = this.changeText
    }
  }

  //封装的能力
  private changeText = (value: string) =>{
    this.text = value
  }

  build() {
    Column() {
      Text(this.text)
    }
  }
}

//定义controller对象
class ChildController {
  changeText = (value: string) => {}
}

@Entry
@Component
struct Parent {
  private ChildRef = new ChildController()
  build() {
    Column() {
      Text('调用Child的changeText').fontSize('18vp').fontColor(Color.Gray)
      Divider()
      Child({ controller:this. ChildRef })
      Button('Parent调用childer的changeText').onClick(() => {
        this.ChildRef.changeText('Parent调用childer的changeText')
      })
    }
    .justifyContent(FlexAlign.Center)
    .width("100%")
    .height("100%")
  }
}
3、HarmonyOS app上架后,在应用商店搜索全称,搜索不到?

刚把app上架到华为市场,但是发现 在华为应用商店搜索我们app的时候 输入全称搜不到,输入非全称反而可以搜到

当应用上架后在应用商店搜索全称却搜索不到时,可能有以下几个原因:

  1. 应用名称不正确:确保 在应用商店搜索的全称与应用上架时使用的名称一致。如果应用名称在上架后发生了更改,搜索结果可能不准确。
  2. 应用包名问题:如果在其他应用商店搜索应用,请确保输入的应用包名与其他应用商店中的包名一致。例如,com.huawei.appmarket。
  3. 应用上架时间:应用上架后可能需要一定时间才能在应用商店中搜索到。请确保应用已经上架足够长的时间。
  4. 应用商店搜索算法:应用商店的搜索算法可能会根据不同的关键词进行排序和过滤。建议使用应用的全称或关键词进行搜索,以增加搜索结果的准确性。
  5. 应用质量和排名:应用的质量和排名也会影响搜索结果。如果应用的质量不高或排名较低,可能会导致搜索不到。建议优化应用的关键词、描述和其他信息,以提高应用的搜索曝光率。
  6. 关键词匹配:确保 使用的关键词与应用的名称、描述等信息匹配。搜索引擎会根据关键词的匹配度进行排序,关键词匹配度越高,搜索结果越准确。
4、HarmonyOS 上架提审被拒,app备案不通过?

参考此文档查看公钥和签名指纹是否正确:https://developer.huawei.com/consumer/cn/forum/topic/0207134216696042133

5、HarmonyOS 滚动列表问题?

页面有两个列表,在滚动一个列表的时候另一个列表需要跟着同时滚动,碰到的问题是进入页面之后,滑动一个列表时另一个列表可以跟着滚动,反过来就不行了(滚动有延迟)。

参考demo:

复制代码
@Entry
@Component
struct ListDragTest {
  @State arr: string[] = [];
  private leftListScroller: ListScroller = new ListScroller()
  private rightListScroller: ListScroller = new ListScroller()

  aboutToAppear() {
    for (let i = 1; i <= 15; i++) {
      this.arr.push("item_" + i);
    }
  }
  @Builder textItem(content: string) {
    Text(content)
      .width('100%')
      .height(150)
      .textAlign(TextAlign.Center)
  }
  build() {
    Row() {
      List({ space: 10, scroller: this.leftListScroller }) {
        ForEach(this.arr, (item: string) => {
          ListItem() {
            this.textItem(item)
          }
        })
      }
      .onScrollFrameBegin((offset: number, state: ScrollState) => {
        this.rightListScroller.scrollBy(0, offset)
        return {offsetRemain: offset}
      })
      .layoutWeight(1)
      .height('100%')
      List({ space: 10, scroller: this.rightListScroller }) {
        ForEach(this.arr, (item: string) => {
          ListItem() {
            this.textItem(item)
          }
        })
      }
      .onScrollFrameBegin((offset: number, state: ScrollState) => {
        this.leftListScroller.scrollBy(0, offset)
        return {offsetRemain: offset}
      })
      .layoutWeight(1)
      .height('100%')
    }.width('100%').margin({ top: 5 })

  }
}
相关推荐
Android研究员14 小时前
Android进阶之事件分发机制深度剖析
android·前端·面试
Csvn14 小时前
🛡️ 前端水印方案全解析——从「能被 F12 删掉」到「删不掉」的反破解实战
前端
学网安的肆伍15 小时前
【046-WEB攻防篇】注入工具&SQLMAP&Tamper编写&指纹修改&高权限操作&目录架构
前端·架构
不肥嘟嘟右卫门15 小时前
鸿蒙原生ArkTS布局方式之Popup+TextInput提示输入布局深度解析
华为·harmonyos
ControlRookie16 小时前
第04篇_把 HTTP 放进 PLC:扫描周期、缓冲区、状态机和能力边界
http·codesys·plc通信
Highcharts.js16 小时前
如何下载使用Highcharts Grid 开发web可编辑表格
前端·人工智能·grid 表格·web 表格·在线编辑表格·highcharts表格安装·表格开发工具
用户629605932470517 小时前
从“浏览器根本区分不了”到真正实现:刷新不退出,关闭标签页自动退出,前端判断浏览器关闭和刷新
前端
qetfw17 小时前
MWU:Vue 3 + FastAPI 的 MaaFramework 跨平台 WebUI 源码
前端·vue.js·python·fastapi·开源项目·效率工具
mfxcyh17 小时前
Vue3+Ant Design Vue 实现手动异步文件上传(含大小校验、弹窗上传)
前端·javascript·vue.js
wordbaby17 小时前
Web端热敏标签打印完整解决方案(QZ Tray + 译维A42)
前端