无
- 发布:2026-10-28 17:13
- 更新:2026-10-28 17:13
- 阅读:158
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win11
HBuilderX类型: 正式
HBuilderX版本号: 5.33
手机系统: Android
手机系统版本号: Android 14
手机厂商: 小米
手机机型: Mi 11
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
App下载地址或H5⽹址: https://apps.all-iot.cn/downloadHtml/index.html?id=47
操作步骤:
预期结果:
原生模板弹窗展示前不触发 OAID 读取,通过审核
原生模板弹窗展示前不触发 OAID 读取,通过审核
实际结果:
原生模板弹窗展示前触发 OAID 读取,未通过审核
原生模板弹窗展示前触发 OAID 读取,未通过审核
bug描述:
您好,我们的 uni-app Android 正式包提交小米应用市场,
因“用户同意隐私政策前读取 OAID”审核失败,请协助核查
DCloud 原生运行时的 OAID 初始化及异步回调授权时序。
一、包信息
包名:bby.aixine.com
versionName:1.9.7
versionCode:149
APK:Aixine1.9.7(4).apk
debuggable:false
包内 manifest 的 uni-app.compilerVersion:5.33
实际 HBuilderX 版本另附“帮助→关于”截图。
二、隐私配置
androidPrivacy.json:
version = "2"
prompt = "template"
disagreeMode.support = false
disagreeMode.loadNativePlugins = false
已确认该配置存在于送审 APK 中。
三、审核记录
2026-10-27 19:26:14.832:检测到 OPPO OAID 读取
2026-10-27 19:26:33.601:检测到隐私政策弹窗展示
报告判定读取发生在用户同意之前,两个时间相差约 18.77 秒。
四、关键堆栈
com.heytap.openid.IOpenID
→ com.heytap.openid.sdk.OpenIDSDK
→ com.bun.miitmdid.c.i.a.getOAID
→ java.lang.reflect.Method.invoke
→ io.dcloud.common.adapter.util.PlatformUtil.invokeMethod:37
→ io.dcloud.p.g3$c.invoke:17
→ $Proxy5.OnSupport
→ com.bun.miitmdid.core.MdidSdk.OnSupport
五、APK 静态核查
- g3$c.invoke 收到 OnSupport 回调后,通过反射调用 getOAID。
此回调内未看到再次检查当前隐私同意状态。 - io.dcloud.a.i() 发起 OAID 初始化前,会调用
AppRuntime.hasPrivacyForNotShown,存在前置隐私检查。 - PrivacyManager.isAgreePrivacy 与 isNotPrivacyAllRight
判断条件不同:前者检查政策版本、同意标记和拒绝状态;
后者主要检查 scok 同意标记和 template 配置。
以上为静态观察,尚未证明这些差异就是本次审核失败的根因。
请协助确认:
- 结合附件堆栈,哪条原生初始化路径触发了这次 OAID 读取?
- 隐私政策版本变化、历史同意状态或异步回调,是否可能导致
当前尚未同意时仍调用 getOAID? - 当前配置是否还需补充设置?若涉及原生 SDK 问题,
请提供修复版本或官方支持的规避方案。