打包模式不同导致部分web页面不显示定位定界指导-鸿蒙开发者社区-51CTO.COM

打包模式不同导致部分web页面不显示定位定界指导

升级到beta1版本后,release构建出的应用部分web渲染不出内容,debug构建没有问题。

HarmonyOS
2024-09-19 11:39:02
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

定位定界方法

问题排查:

  • 编译构建正向排查,怀疑是混淆导致,关闭混淆后验证仍然有问题。
  • 对比编译产物差异,debug和release的abc文件差别很大,debug包的abc文件是31MB,release包的abc文件是11MB,分析hilog日志没有模块加载异常,加载不显示的web页面前后没有异常日志点。

DevTools调试工具

DevTools是一个 Web前端开发调试工具,提供了电脑上调试移动设备前端页面的能力。开发者通过setWebDebuggingAccess()接口开启Web组件前端页面调试能力,利用DevTools工具可以在电脑上调试移动设备上的前端网页。

− 非root手机必须按照官网文档设置打开可调试接口

− root手机可使用批处理命令一键赋能调试能力,见附件webDebug

使用devtools工具打开电脑浏览器调试,查看“Console”,没有报错日志,排查下一项。

查看“Elements”,发现财富页面顶部web加载的在线html页面,标签<div id="app">内容为空,资源没有请求到:

查看“Network”,操作步骤当前页面调试窗口切换到“Network”然后点一次刷新,对比这个页面在两个版本请求的资源,发现有两处差异,差异1:UA不同,差异2:异常的页面缺少msid资源请求:

分析差异

通过DevTools调试工具分析发现有两处差异,继续分析差异对应用的影响:

差异1:usage-agent不同,用正常显示的ua替换异常页面的ua,替换方法如下,在第4步处填入正常的ua,操作后异常页面仍然没有显示内容,证明跟ua没有关系,排除可疑:

差异2:异常的页面缺少msid资源请求,页面向服务器请求但是没有响应,怀疑请求被服务器拦截,需要重点排查,经确认是缺少msid导致。

问题根因

通过对比两个版本的差异点,找出异常页面缺少msid资源,由于增加了Release模式检测,然后导致monitor.auto.browser.min.js文件的路由被拦截,之前的beta和Release的逻辑没问题,新版本被新提交代码给覆盖,导致beta的赋值逻辑变了。

分享
微博
QQ
微信
回复
2024-09-19 15:40:35
相关问题
HarmonyOS web加载页面图片不显示
356浏览 • 1回复 待解决
DFX-crash定位定界工具
579浏览 • 1回复 待解决
HarmonyOS web组件alert不显示
394浏览 • 1回复 待解决
HarmonyOS Web组件加载片段时候不显示
143浏览 • 1回复 待解决
HarmonyOS web系统组件写css不显示
176浏览 • 1回复 待解决
加解密问题的定位指导
302浏览 • 1回复 待解决
应用性能问题定位和优化指导
2459浏览 • 1回复 待解决
HarmonyOS CustomDialogController 不显示
170浏览 • 1回复 待解决
PopupDialog 不显示怎么回事?
7410浏览 • 2回复 待解决
harmony surfaceProvider绘制不显示问题
10073浏览 • 4回复 待解决