mounted: function() {
var self = this
self.form.account = localStorage.getItem('loginAccount') || ''
localStorage.setItem(tokenName, '')
this.isTablet = os.isTablet
mui.plusReady(function() {
plus.navigator.closeSplashscreen();
console.log('------------------plus ready--------------------')
plus.geolocation.getCurrentPosition(self.successCallback, function(e) {
console.log('------------------geolocation error--------------------')
console.log(JSON.stringify(e))
var msg = "";
switch(e.code) {
case 1:
msg = "GPS访问被拒绝 或 GPS未开启";
break;
case 2:
msg = "位置信息不可用";
break;
case 3:
msg = "获取用户位置的请求超时";
break;
default:
msg = e.message;
break;
}
mui.toast(msg);
}, {
provider: 'amap'
});
})
this.initPage()
mui('.mui-checkbox').on('change', 'input', function() {
self.isPolicyAccepted = this.checked;
console.log(self.isPolicyAccepted)
});
},
- 发布:2021-01-16 20:26
- 更新:2021-01-17 12:08
- 阅读:573
产品分类: HTML5+
HBuilderX版本号: 3.0.5
手机系统: iOS
手机系统版本号: iOS 12.4
手机厂商: 苹果
手机机型: iphon 6, ipad
打包方式: 云端
示例代码:
操作步骤:
重现过程
1) 后来我在本机多次尝试重试, 在iOS14.2 和14.3下面都始终无法重现.
2) 之后使用一个iphone 6手机, 操作系统为12.5.1,多次尝试后重现.
尝试步骤: 先启动一个大游戏程序, 然后关闭应用, 重新启动应用,多次尝试后,应用就出现白屏现象
3) 尝试在低配置andoid下重现, 发现会出现白屏,但是稍等几秒后会逐步展示程序
重现过程
1) 后来我在本机多次尝试重试, 在iOS14.2 和14.3下面都始终无法重现.
2) 之后使用一个iphone 6手机, 操作系统为12.5.1,多次尝试后重现.
尝试步骤: 先启动一个大游戏程序, 然后关闭应用, 重新启动应用,多次尝试后,应用就出现白屏现象
3) 尝试在低配置andoid下重现, 发现会出现白屏,但是稍等几秒后会逐步展示程序
预期结果:
期望正常呈现页面
期望正常呈现页面
实际结果:
白屏, 什么内容都没有
白屏, 什么内容都没有
bug描述:
问题描述
通过云端打包并且发布后,提交苹果审核, 反馈给我结果是无加载内容,白屏,苹果给我回复的截图如下:
他们使用的环境是: - Device type: iPad - OS version: iOS 14.3
这个问题之前开发过程中从未出现.
个人理解
我99%可以判定是代码还没有进入mui.plusReady的逻辑, 否则即使未执行任何操作,对应的html内容也应该出现.
很有可能是在进入plusReady之前, 系统就白屏状态, 然后应为某种内存/性能的原因,造成系统处理出错.
z***@hotmail.com (作者)
补充信息
后来我通过真机调试也实现了重现,重现环境:
iOS: 12.5.1,
型号: iphone 6手机
另外做了如下尝试:
1) 在manifest.json里面加入如下配置项目, 后来替换为WKWebview, 发现效果差不多
"kernel" : {
"ios" : "UIWebview"
}
2) 在代码中加入timer, 每秒钟查看element是否存在
timerfunc (){
var self = this
//read elemet
var cloud = document.getElementsByClassName("flex-bd")
console.log('-----------------------timerfunc---------------' + JSON.stringify(cloud))
//next timer
setTimeout(self.timerfunc, 1000)
},
通过测试, 可以确定代码已经正确完成了 mui.plusReady. 所以基本排除代码内的问题.
此外,检查打印日志,发现原本应该1秒一次的日志, 出现不规则情况,有时10秒,有时8秒. 表明系统内的执行受到了严重干扰.日志如下:
12:03:11.370 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:03:12.363 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:03:22.785 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:07.464 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:15.740 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:18.892 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:25.239 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:28.391 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}
12:04:48.185 -----------------------timerfunc---------------{"0":{"_prevClass":"flex-bd curr"},"1":{"_prevClass":"flex-bd"},"2":{"_prevClass":"loginRight flex-bd"}}