鸿蒙6.0开发常见问题【使用Router跳转导致闪退,可能是什么原因,如何排查?】
场景一
循环依赖导致闪退
问题现象
使用ohos.router (页面路由)跳转,有HAR1包里A页面和HAR2中的B页面,A和B相互跳转,会因为相互引用崩溃。
可能原因
使用router路由跳转时,由于har包相互引用,造成循环依赖,会出现闪退。
解决措施
在设计时尽量通过依赖管理避免循环依赖,建议通过Navigation实现页面路由管理或者HMRouter进行路由管理,临时方案可采用lazy的方式避免循环依赖。
场景二
未找到UIContext上下文
问题现象
router的pushUrl出现闪退,报错信息为:Error message:lnternal error.UI execution context not found. Error code:100001。
可能原因
在使用router进行跳转时,如果路由跳转在上下文不明确的地方使用,如Native调用的回调函数或者其他类似场景,会出现闪退现象。
解决措施
建议router的使用切换为UIContext中的使用方案。
this.getUIContext().getRouter().pushUrl({
url: 'login/UserNameLoginPage'
}, () => {
this.getUIContext().getRouter().clear();
})
场景三
混淆用法错误
问题现象
使用router.repleace(),在debug模式下运行正常,release模式下闪退。
可能原因
首先排查混淆用法是否正确,正例:
-enable-property-obfuscation
-enable-toplevel-obfuscation
-enable-filename-obfuscation
-enable-export-obfuscation
-keep
./src/main/ets/startup/\*\*
- 检查配置文件build-profile.json5中的"enable"字段是否为 true。
- 确定子module的Build方式。
- 排查文件中这个属性所在的类是否export或者import。
- 排查是否keep的是.har包中的属性。
分析结论
子场景一:使用-keep filepath这种形式,-keep filepath这种形式不会影响文件名混淆-enable-filename-obfuscation的功能。所以设置-keep混淆后文件名还是会被混淆。
子场景二:-keep的是.har包中的属性,但是-keep不能保留.har文件。
修改建议
子场景一:用-keep-file-name的形式配置混淆,支持使用名称类通配符。
子场景二:用-keep保留oh_modules文件夹下对应的har包来避免混淆:在obfuscation-rules.txt文件里配置,用-keep ./oh_modules/har-name。
最后呢
很多开发朋友不知道需要学习那些鸿蒙技术?鸿蒙开发岗位需要掌握那些核心技术点?为此鸿蒙的开发学习必须要系统性的进行。
而网上有关鸿蒙的开发资料非常的少,假如你想学好鸿蒙的应用开发与系统底层开发。你可以参考这份资料,少走很多弯路,节省没必要的麻烦。由两位前阿里高级研发工程师联合打造的《鸿蒙NEXT星河版OpenHarmony开发文档》里面内容包含了(ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点
如果你是一名Android、Java、前端等等开发人员,想要转入鸿蒙方向发展。可以直接领取这份资料辅助你的学习。下面是鸿蒙开发的学习路线图。

针对鸿蒙成长路线打造的鸿蒙学习文档。话不多说,我们直接看详细鸿蒙(OpenHarmony )手册(共计1236页)与鸿蒙(OpenHarmony )开发入门视频,帮助大家在技术的道路上更进一步。
- 《鸿蒙 (OpenHarmony)开发学习视频》
- 《鸿蒙生态应用开发V2.0白皮书》
- 《鸿蒙 (OpenHarmony)开发基础到实战手册》
- OpenHarmony北向、南向开发环境搭建
- 《鸿蒙开发基础》
- 《鸿蒙开发进阶》
- 《鸿蒙开发实战》

总结
鸿蒙—作为国家主力推送的国产操作系统。部分的高校已经取消了安卓课程,从而开设鸿蒙课程;企业纷纷跟进启动了鸿蒙研发。
并且鸿蒙是完全具备无与伦比的机遇和潜力的;预计到年底将有 5,000 款的应用完成原生鸿蒙开发,未来将会支持 50 万款的应用。那么这么多的应用需要开发,也就意味着需要有更多的鸿蒙人才。鸿蒙开发工程师也将会迎来爆发式的增长,学习鸿蒙势在必行! 自↓↓↓拿
更多推荐



所有评论(0)