q***@dnb.com
q***@dnb.com
  • 发布:2026-03-17 11:26
  • 更新:2026-04-07 09:59
  • 阅读:279

【报Bug】使用unipush2.0,小米审核驳回报频繁索取权限

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: macOS 26.3

HBuilderX类型: 正式

HBuilderX版本号: 5.03

手机系统: Android

手机系统版本号: Android 16

手机厂商: 小米

手机机型: 小米 14

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

打开App,同意通知权限。关闭App。再打开App。

预期结果:

推送权限同意后,重新进入应用不再有接口产生调用行为

实际结果:

推送权限同意后,重新进入应用仍会有接口产生调用行为

bug描述:

我的项目使用unipush2.0,在上架小米时被驳回,原因是频繁获取权限,小米给出堆栈信息在附件中。在unipush2.0的微信群中询问,个推人员建议我来提工单。请帮忙看一下如何解决这个权限问题。

2026-03-17 11:26 负责人:DCloud_Android_THB 分享
已邀请:
Ask小助手

Ask小助手

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

从 DCloud 官方技术支持角度对该 bug 反馈评审如下:

1. Bug 反馈内容完整性分析

已提供的信息:

  • 环境信息完整(HBuilderX 5.03 正式版、Vue3、Android 16、小米 14)
  • 复现步骤描述基本清晰(启动-授权-关闭-再启动的循环场景)
  • 问题现象描述明确(权限同意后再次启动仍有接口调用行为)

缺失的关键信息:

  • 缺少代码示例:未提供 UniPush 2.0 的初始化代码和权限相关调用代码,无法判断是 SDK 内部行为还是开发者调用逻辑问题
  • 缺少具体堆栈信息:反馈中提到小米提供了堆栈信息在附件,但正文未贴出具体的权限名称和调用堆栈
  • 缺少具体权限标识:未说明是哪些权限被频繁索取(通知权限、设备信息权限还是其他权限)
  • 缺少 manifest 配置:未提供 manifest.json 中关于推送和权限的配置内容

2. Bug 成立性分析

知识库中暂未检索到关于"UniPush 2.0 导致频繁索取权限"的直接技术文档或已知 issue 记录。但从插件市场知识库中发现存在多个解决小米/华为上架权限被拒的插件:

这些插件的存在表明小米应用商店对权限申请时机申请目的告知有严格要求。根据反馈描述"同意通知权限后再次进入仍有接口调用行为",可能的原因包括:

  1. UniPush 2.0 SDK 每次初始化时重复申请已授权的权限
  2. 未正确缓存权限状态导致重复弹窗
  3. 缺少权限申请目的的同步说明(小米审核要求)

无法确认是否为 SDK Bug:需要补充具体的权限调用堆栈才能判断是 SDK 内部行为还是项目配置问题。

3. 评审结论与建议

当前反馈评级:信息不完整,需要补充关键信息才能定位问题

建议用户补充以下信息:

  1. 小米审核提供的具体堆栈信息(包含权限名称和调用链)
  2. manifest.jsonpermissionpush 相关配置
  3. 项目中 UniPush 初始化的相关代码片段
  4. 具体的权限名称(是通知权限、读取设备信息还是其他权限)

临时解决方案建议:
在补充信息前,可先参考插件市场中的权限申请目的说明插件,该插件提供了全局拦截权限申请并添加使用目的说明的功能,可能有助于解决小米审核问题。

后续处理建议:
请提供上述补充信息后,官方技术人员将进一步分析是 UniPush 2.0 SDK 的初始化逻辑问题还是项目配置问题。如确认是 SDK 问题,将提交给个推团队进行修复。

内容为 AI 生成,仅供参考
q***@dnb.com

q***@dnb.com (作者)

小米堆栈信息在截图中了,涉及的权限是android.permission.PUSH_NOTIFICATIONS

DCloud_Android_THB

DCloud_Android_THB

同意权限后不会再请求通知权限。

q***@dnb.com

q***@dnb.com (作者)

请看截图,小米那边反馈是同意之后,重新打开App,发现再次申请权限

  • DCloud_Android_THB

    那你问一下,同意后,是否仍然会权限弹框

    2026-03-18 10:21

  • q***@dnb.com (作者)

    回复 DCloud_Android_THB: 小米回复没有频繁弹窗,但频繁调用接口了,频繁调用接口在它们的测试场景中也是不行的。他们的测试系统版本是android9、13

    2026-03-18 14:30

  • DCloud_Android_THB

    回复 q***@dnb.com: 同意后,我们不会再次请求权限,所以我怀疑是第一次他并没有同意权限,导致再次启动 app 会重新申请弹框,最起码从堆栈上看是这样。

    2026-03-23 14:05

q***@dnb.com

q***@dnb.com (作者)

解决了,是小米那边检测引擎的问题

  • 用户2924717

    你这个是怎么处理的,我的应用也是这样,客服说接口调用也会算作频繁

    2026-03-30 09:54

q***@dnb.com

q***@dnb.com (作者)

小米又给我驳回了,堆栈见附件。

小米客服说之前是问题存在争议性,人工尚未复现,所以先给我通过,目前经过检测方再次核实确认存在接口调用行为。

请再帮忙看下。

  • DCloud_Android_THB

    同意了吗

    2026-04-07 14:37

  • q***@dnb.com (作者)

    回复 DCloud_Android_THB: 小米回复是在点击同意隐私后进入应用出现明确拒绝后,再次重新启动应用又获取

    2026-04-07 16:45

  • q***@dnb.com (作者)

    这个问题最早是3月12日开始出现的,之前一直没有问题

    2026-04-07 16:50

要回复问题请先登录注册