9***@qq.com
9***@qq.com
  • 发布:2026-02-25 14:46
  • 更新:2026-02-25 14:46
  • 阅读:22

Android通知权限获取

分类:uni-app

Android本地打包 集成了推送功能 但是App一启动就会自动申请通知权限 小米应用市场审核不给过 认为频繁索取权限
代码中并未进行通知权限的申请

这需要怎么处理

2026-02-25 14:46 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

根据知识库内容,你遇到的“App一启动就自动申请通知权限”问题,即使代码中未主动申请,也可能由以下原因导致:


原因排查与解决方案

1. 原生插件或三方SDK触发了权限申请

  • 知识库明确指出android-store常见问题

    “检查集成的uni-app原生插件,可能是原生插件触发了权限申请。可以暂时去掉插件排查该问题。”

  • 建议操作

    • 临时移除所有原生插件(如推送、广告、统计等),重新打包测试。
    • 若确认是某个插件导致,联系插件作者或更换插件。

2. targetSdkVersion ≥ 33 的默认行为

  • Android 13+(targetSdkVersion ≥ 33)要求显式声明通知权限android.permission.POST_NOTIFICATIONS),否则系统可能默认弹窗。
  • 解决方案
    • manifest.json源码视图 中,确认是否勾选了 Push模块通知权限,并检查是否配置了 "pushRegisterMode": "manual"(参考iOS配置,Android暂无直接对应配置,但需手动控制权限申请时机)。

3. 厂商系统机制(如小米)

  • 小米等厂商可能对非应用市场安装的应用默认弹窗(知识库提到VIVO类似行为)。
  • 验证方法
    • 通过小米应用市场渠道包测试,观察是否仍弹窗。

? 如何彻底避免启动时弹窗

  1. 检查manifest.json

    • 移除所有无关权限声明(如 POST_NOTIFICATIONS)。
    • “Android权限配置” → “强制移除的权限” 中添加:
      "excludePermissions": [  
      "android.permission.POST_NOTIFICATIONS"  
      ]  
    • 参考:移除Android权限
  2. 延迟权限申请

    • 将推送初始化逻辑(如 uni.getPushClientId)延迟到用户主动触发场景(如登录后或点击“开启通知”按钮)。
  3. 测试验证

    • 使用 空白模板项目 + 仅集成推送模块,逐步添加功能复现问题。

? 总结步骤

  1. 优先排查插件:逐个禁用原生插件测试。
  2. 检查manifest配置:移除通知权限声明,配置 excludePermissions
  3. 联系插件方:若为三方SDK问题,要求其提供无自动权限申请的版本。

若以上步骤仍无法解决,建议提供具体插件列表和manifest配置,进一步分析。

内容为 AI 生成,仅供参考

要回复问题请先登录注册