【公众号搬运】React-Native开发鸿蒙NEXT(5)

136 阅读3分钟

React-Native开发鸿蒙NEXT(5)

原创 悬空八只脚 悬空八只脚 2024年08月21日 17:55 江苏

RN的开发也算是把功能基本做出来了,现在想着先收一收,把已知的几个问题解决下,8月能提个版本给遥遥领先。几个问题,有些跟鸿蒙没有什么关系,都是自己RN水平有限,自己给自己挖的坑。不管是已解决还是未解决的,都记录下

  • RN里因为页面多次刷新导致的消息多次收到。

这个可以100%确定是自己开发的锅,因为不是所有页面都有这毛病。出问题的页面上有大概40个state变量,页面的频繁刷新导致了问题。现在的办法比较粗暴,一方面把通知里面调用后台查询的逻辑去掉,放到root.tsx页面全局统一去做,另一方面靠global变量,做了防抖,尽量减小少触发次数,最终实现最多一秒触发一次。就这样临时把漏洞堵住先。先开发完能打包测试,后续再优化。

图片

  • 部分接口调用报错,提示签名无效

这个问题着实摆了我一道。恶心就恶心在部分接口。兜兜转转,直到把以前的旧工程在另一台笔记本上跑起来,一对比参数没什么区别,这下终于怀疑是md5计算的第三方了。没法子,换成以前用的依赖,md5计算这种都是纯js,鸿不鸿蒙化应该没有什么区别。然后就都正常了。现在推断可能是带中文的字符串md5计算有问题,至少发现的几个接口都会传递中文。之前用的md5是鸿蒙三方库里的react-native-md5,问题就出在这个依赖的计算上。换成鸿蒙化前用的md5就解决了。有点折腾人。

图片

图片

图片

  • 鸿蒙下OSS上传

目前这个问题尚未解决。OSS在鸿蒙没有相关的SDK,只能用web方式来上传。后台开发的上传接口会报错,还在排查。

  • Keyboard无法监听

监听键盘无效,无法实现输入框的自动调整高度,现在存在被键盘遮挡的问题。已经联系鸿蒙去提单子跟进了。除了自己开发,也尝试了使用

react-native-keyboard-aware-scroll-view";同样无效(后来发现这三方也是靠监听键盘来实现的。。。)

  • 打包提测
    之所以列出来是目前还都是本地开发,没打包运行过。想着处理完OSS上传的事再打包。

目前基本就这么多,剩下的都是开发量的问题,比如首页现在下部的社区内容还光着呢。接着干呗,天快亮了。

为了冰美式,冲。


更多内容可关注
我的公众号悬空八只脚