uni-app 添加privacy后运行在手机上安装无碍,但使用android_debug.apk或正式包apk安装会卡死在splash页面

uni-app 添加privacy后运行在手机上安装无碍,但使用android_debug.apk或正式包apk安装会卡死在splash页面

示例代码:

"privacy" : {
"prompt" : "template",
"template" : {
"title" : "用户须知",
"message" : "尊敬的用户",
"buttonAccept" : "同意并继续",
"buttonRefuse" : "不同意"
}
}

操作步骤:

去掉privacy又正常进入程序

预期结果:

点击privacy同意之后,进入splash启动页面加载后几秒就正常进入程序登录页面

实际结果:

点击privacy同意之后,进入splash启动页面没有加载动画,直接卡死在splash页面

bug描述:

添加privacy之后,直接数据线连接运行在手机上安装没问题,用android_debug.apk或正式包apk安装都会直接卡死在splash页面

附图

Image Image

信息类别 信息内容
产品分类 uniapp/App
PC开发环境 Windows
PC操作系统版本 win7
HBuilderX类型 正式
HBuilderX版本 3.1.22
手机系统 Android
手机系统版本 Android 10
手机厂商 华为
手机机型 HUAWEI Mate 10
页面类型 vue
打包方式 云端
项目创建方式 HBuilderX

更多关于uni-app 添加privacy后运行在手机上安装无碍,但使用android_debug.apk或正式包apk安装会卡死在splash页面的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app 添加privacy后运行在手机上安装无碍,但使用android_debug.apk或正式包apk安装会卡死在splash页面的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这个问题通常是由于隐私协议配置与启动流程的时序冲突导致的。以下是几个关键排查点:

  1. 隐私协议回调处理:确保在 onNeedPrivacyAuthorization 回调中正确处理了用户操作。示例:
// App.vue
onNeedPrivacyAuthorization: function(e) {
  // 用户点击同意
  e.resolve(true)
}

如果没有正确调用 e.resolve(true),应用会卡在启动阶段。

  1. 启动时序问题:隐私弹窗显示期间,onLaunch 等生命周期可能已经执行。建议将初始化逻辑移至隐私协议同意后:
let privacyAccepted = false

export default {
  onNeedPrivacyAuthorization(e) {
    // 显示自定义隐私弹窗
    uni.showModal({
      content: '请阅读隐私协议',
      success: (res) => {
        if (res.confirm) {
          privacyAccepted = true
          e.resolve(true)
          this.doInit() // 同意后执行初始化
        }
      }
    })
  },
  methods: {
    doInit() {
      // 原onLaunch中的初始化代码
    }
  }
}
回到顶部