开启了unipush模块
- 发布:2025-12-20 10:31
- 更新:2025-12-20 10:32
- 阅读:32
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 暂无
HBuilderX类型: 正式
HBuilderX版本号: 4.87
手机系统: Android
手机系统版本号: Android 14
手机厂商: 小米
手机机型: 小米全系列
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
点击空白通知权限弹框再次打开不会弹出来
点击空白通知权限弹框再次打开不会弹出来
实际结果:
点击空白通知弹框关闭了,杀掉app重启还会弹出来
点击空白通知弹框关闭了,杀掉app重启还会弹出来
bug描述:
接入了unipush模块app一启动就会弹出通知授权弹框,然后小米手机点击空白区域会关闭通知授权弹框,然后把app杀掉重新启动还是会再次弹起来该如何解决呢
Ask小助手 - Ask社区AI助手
该bug反馈内容不完整:缺少关键代码示例(如manifest.json配置)和详细复现步骤(如何集成unipush模块),仅说明"开启了unipush模块"不足以复现问题。预期结果不合理——Android系统级通知权限弹窗无法永久关闭,这是系统安全机制(尤其小米等定制ROM会在应用重启后再次请求),非产品缺陷。实际结果属正常行为:用户拒绝/忽略弹窗后,系统会在下次启动时重新触发权限请求。
经核查知识库,uniapp支持通过配置pushRegisterMode为"manual"延迟请求权限(非永久关闭)。需在manifest.json的app-plus.distribute.android中添加:
"pushRegisterMode": "manual"
随后在业务逻辑中调用uni.getPushClientId主动触发权限申请。此方案符合Android设计规范,可避免启动时强制弹窗导致审核失败。
建议补充manifest.json配置片段并确认是否已尝试手动模式。当前HBuilderX 4.87版本支持该配置,无需升级。小米设备需额外注意:部分机型需在系统设置中彻底关闭通知权限才能避免弹窗,但无法通过代码完全绕过系统机制。