uni-app 离线模式下一键登录有bug
uni-app 离线模式下一键登录有bug
产品分类:
uniapp/App
PC开发环境操作系统:
Windows
PC开发环境操作系统版本号:
11
HBuilderX类型:
正式
HBuilderX版本号:
3.4.7
手机系统:
Android
手机系统版本号:
Android 11
手机厂商:
小米
手机机型:
node 11
页面类型:
vue
vue版本:
vue2
打包方式:
离线
项目创建方式:
HBuilderX
示例代码:
用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误
Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
明显gysdk这个sdk的错误,这个gysdk也是一键登录的sdk
操作步骤:
用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误
Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
明显gysdk这个sdk的错误,这个gysdk也是一键登录的sdk
预期结果:
用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误
Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
明显gysdk这个sdk的错误,这个gysdk也是一键登录的sdk
实际结果:
用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误
Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
明显gysdk这个sdk的错误,这个gysdk也是一键登录的sdk
bug描述:
用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误
Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
明显gysdk这个sdk的错误,这个gysdk也是一键登录的sdk
更多关于uni-app 离线模式下一键登录有bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html
你的意思是 新版本离线打包后有这个bug?
你从哪个版本更新到哪个版本引起的。 更新的时候 更新了那几个aar?
用离线sdk 自带的示例有问题嘛
更多关于uni-app 离线模式下一键登录有bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html
就是离线报错,gysdk 用hbuilder直接运行是可以一键登录的,离线打包后之前正常,更新了一下sdk版本之后,报如下错误 Activity com.g.gysdk.view.ELoginActivity has leaked window DecorView@ba992ce[ELoginActivity] that was originally added here
能给个什么建议么?
好几天了,一直卡在这里
在使用 uni-app 开发应用时,如果遇到离线模式下的一键登录功能出现 Bug,可以参考以下步骤进行排查和解决:
1. 确认问题现象
- 描述 Bug 的具体表现:例如,是否无法触发登录、界面卡死、报错信息等。
- 确认是否仅在离线模式下出现问题,还是在线模式下也有类似问题。
2. 检查网络状态检测
- 在离线模式下,应用需要检测设备的网络状态。
- 使用
uni.getNetworkType
或uni.onNetworkStatusChange
监听网络状态。 - 确保在离线模式下正确处理网络不可用的情况。
uni.getNetworkType({
success: (res) => {
if (res.networkType === 'none') {
console.log('当前处于离线模式');
// 提示用户网络不可用
uni.showToast({
title: '网络不可用,请检查网络连接',
icon: 'none'
});
}
}
});
3. 一键登录逻辑处理
- 检查一键登录的逻辑是否依赖网络请求。
- 在离线模式下,避免直接调用需要网络支持的 API。
- 可以使用本地缓存(如
uni.setStorage
)保存用户信息,以便在离线模式下使用。
// 示例:检查网络状态后决定是否执行登录
uni.getNetworkType({
success: (res) => {
if (res.networkType === 'none') {
// 离线模式,使用本地缓存
const userInfo = uni.getStorageSync('userInfo');
if (userInfo) {
console.log('使用本地缓存登录', userInfo);
} else {
uni.showToast({
title: '网络不可用,无法登录',
icon: 'none'
});
}
} else {
// 在线模式,执行一键登录
this.performLogin();
}
}
});
4. 错误处理与提示
- 在离线模式下,如果用户尝试一键登录,需要给出明确的提示。
- 使用
uni.showToast
或uni.showModal
提示用户无法登录的原因。
uni.showModal({
title: '提示',
content: '当前网络不可用,请检查网络连接后重试',
showCancel: false
});