DCloud_App_Array
DCloud_App_Array
  • 发布:2015-07-23 14:28
  • 更新:2015-07-23 14:28
  • 阅读:18074

关于HBuilder“制作移动App资源升级包...”生成的wgt包升级后会导致部分功能失效的问题

分类:HBuilder

问题现象

使用HBuilderuilder6.0.0及之前版本打包ipa/apk包,HBuilder升级到6.1.0及之后版本,通过“发行”->“制作移动App资源升级包...”生成应用升级包wgt文件后,或者是生成应用差量升级包(wgtu)。
在之前安装ipa/apk包中通过应用升级(差量升级)后就一直停留在启动页面,或者进入应用后功能无法使用。

问题原因分析

确认是因为升级HBuilder6.1.0版本后没有兼容以前的UI模块导致的问题,会影响plus.webview.、plus.nativeUI.、plus.navigator.* API的使用。
新版本中已经将UI模块拆分成Webview、NativeUI、Navigator三个独立的模块,默认生成的wgt文件中没有添加UI模块权限,导致老版本Runtime更新wgt后判断缺少UI模块权限而无法调用相关API。

解决方案

目前可通过在manifest.json文件的"permissions"节点下添加“UI”节点解决。
打开应用的manifest.json文件,切换到“代码视图”,在"permissions"节点下添加“UI”数据如下:

"UI": {  
    "description": "系统原生控件"  
}

注:
6.1.0之后版本已经去掉模块权限的判断逻辑,不会存在此问题。
6.2.0版本默认添加UI模块,确保向下的兼容性。

3 关注 分享
BoredApe 星空学者 Trust

要回复文章请先登录注册

星空学者

星空学者

进入手机应用里面,清除缓存
2015-07-28 15:14
DCloud_IOS_XTY

DCloud_IOS_XTY

回复 星空学者 :
你如何清理的,如果把升级信息删除了,应用会认为未做过升级
2015-07-28 11:36
星空学者

星空学者

我们已经遇到这个问题了,纠结了很久了。不过咱这里还有一个大BUG,你升级完了以后,清理一下手机应用里本APP的缓存,升级东西就都没了,又变为升级前的版本了。这个问题能解决吗?解决不了,此种升级方法存在就没有意义啊
2015-07-28 09:59