详见描述
- 发布:2024-12-25 15:50
- 更新:2024-12-26 11:56
- 阅读:97
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
手机系统: Android
手机系统版本号: Android 15
手机厂商: 小米
手机机型: 小米14pro
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: CLI
CLI版本号: 3.0.0-4030620241128001
App下载地址或H5⽹址: https://nbzhufang-pro.oss-cn-hangzhou.aliyuncs.com/app%2Capp/%E5%AE%89%E8%A3%85%E5%8C%85/nbzufang.apk
操作步骤:
预期结果:
点击拒绝之后不收集硬件序列号
点击拒绝之后不收集硬件序列号
实际结果:
点击拒绝之后会收集硬件序列号
点击拒绝之后会收集硬件序列号
bug描述:
问题描述
点击拒绝进入隐私政策会触发收集硬件序列号。我发现社区还有其他人有同样问题,但没人解答,至今未解决。
调用堆栈说明
硬件序列号
发生时间:2024-12-24 09:57:43
违规md5:md5=084134B446741014FCC3A21A42DEB2E6,
违规包名:pkg=com.nbzhufang.app,
违规动作:action=android.permission.READ_PHONE_STATE_SERIALNO,
违规详情:content=JAVA反射读取Build.SERAIL,callstack:java.lang.Class.getField:1605;io.dcloud.e.f.a$b.f:1;io.dcloud.e.f.a$b.e:6;io.dcloud.e.f.a$b.<clinit>:1;io.dcloud.e.f.a$b.b:1;io.dcloud.e.f.a.a:65;io.dcloud.e.f.a.a:22;io.dcloud.e.f.b.a:10;io.dcloud.e.f.b.<init>:6;io.dcloud.e.f.b.a:4;io.dcloud.feature.gg.dcloud.AolFeatureImpl.doForFeature:136;io.dcloud.feature.gg.AolFeatureImplMgr.doForFeature:5;io.dcloud.a.a:16;io.dcloud.b$a.run:5;android.os.Handler.handleCallback:873;android.os.Handler.dispatchMessage:99;android.os.Looper.loop:193;android.app.ActivityThread.main:7175;java.lang.reflect.Method.invoke:-2;com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run:493;com.android.internal.os.ZygoteInit.main:858;
问题自查
- 是否最新版本
目前已经将uniapp相关依赖升级至最新,版本为3.0.0-4030620241128001
- 隐私政策弹窗是否为template模式
{
"version" : "1.0.0",
"prompt" : "template",
"title" : "服务协议和隐私政策",
"message" : " 请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://admin.nbzufang.com.cn/PrivacyPolicy.html\">《隐私政策》</a>和<a href=\"https://admin.nbzufang.com.cn/AppUserAgreement.html\">《服务协议》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept" : "同意并接受",
"buttonRefuse" : "拒绝",
"hrefLoader" : "system",
"disagreeMode" : {
"support" : true,
"loadNativePlugins" : false,
"visitorEntry" : false,
"showAlways" : false
},
"styles" : {
"backgroundColor" : "#FFFFFF",
"borderRadius" : "5px",
"title" : {
"color" : "#333333"
},
"buttonAccept" : {
"color" : "#00a381"
},
"buttonRefuse" : {
"color" : "#c8161d"
}
}
}
- 查看是否集成uni原生插件
已经删除相关原生插件打包,用到了腾讯im离线推送插件和自己写的原生插件,复测未通过
- 是否在disagreeMode模式下调用限制plus API
目前发现启动时会调用plus.navigator.isRoot进行安全检测,加了plus.runtime.isAgreePrivacy()判断进行调用后,还是审核未通过
- 是否是unipush或者友盟sdk导致获取硬件序列号
去除这两个之后,提交复测未通过
9***@qq.com (作者)
最新情况:
- 已经去除掉main.js中所有无关代码仅保留createApp
- 去除掉了app.vue中所有代码和引用
- 删除掉了所有页面和代码,仅保留了一个啥也没有的空页面
- 去除掉了unipush,友盟,所有原生插件,仅保留:相机模块,map地图,oauth登录授权,payment支付,share分享videoplayer
apk下载地址:https://nbzhufang-pro.oss-cn-hangzhou.aliyuncs.com/app%2Capp/%E5%AE%89%E8%A3%85%E5%8C%85/demo.apk
*结果:审核未通过。*
理由:APP启动时,在用户授权同意隐私政策前,APP及SDK不可以提前收集和使用IMEI、OAID、IMSI、MAC、应用列表等信息;
uniapp官方文档说明:
也就是说根据《规定》要求,很多App需要支持在用户不同意“隐私政策的情况下仍然可以进入运行,并提供基本功能服务。为了支持此类需求,HBuilderX 3.3.1版本新增“未同意隐私政策模式”(以下简称“disagreeMode”),配置支持disagreeMode后,用户在“隐私政策”提示框点击拒绝按钮后仍然可以继续使用App。在此模式下,uni-app(5 App/Wap2App) 内部逻辑会做特殊处理:
- 不会主动申请读写手机存储、访问设备信息等权限
- 不会主动读任何取设备信息
- 仍然会发送应用启动统计请求,但不包含设备信息
- 仍然会提交异常崩溃统计请求,但不包含任何设备信息
不是你们收集的,那是我收集的呗...??我请问呢。。。?
昨天打包去除了原生插件后打包这个给我气笑了,我不知道这个原生插件有没有打包进去,我是先删除原生插件后打包但提示有用到原生插件,原生插件中有用到腾讯im的离线推送
我这里提供一下复现案例可自行下载