uni-app 上架vivo和荣耀应用市场隐私不合规 提示APP未见向用户告知且未经用户同意 在后台运行时存在监听用户手机安装卸载应用情况

发布于 1周前 作者 nodeper 来自 Uni-App

uni-app 上架vivo和荣耀应用市场隐私不合规 提示APP未见向用户告知且未经用户同意 在后台运行时存在监听用户手机安装卸载应用情况

示例代码:

检测类型:APP、SDK违规处理用户个人信息方面
检测项:超范围收集个人信息
场景5:APP未见向用户告知且未经用户同意,在后台行为时,存在收集 IMSI、设备序列号等信息的行为,非服务所必需且无合理应用场景,超出与收集个人信息时所声称的目的具有直接或合理关联的范围。
风险信息:APP未见向用户告知且未经用户同意,在后台运行时,存在监听用户手机安装、卸载应用情况,非服务所必需且无合理应用场景,超出与收集个人信息时所声称的目的具有直接或合理关联的范围。
风险详情:{com.kwad.sdk.app.b$3@2c0b752=[android.intent.action.PACKAGE_ADDED, android.intent.action.PACKAGE_REMOVED]}

操作步骤:

  • 提交审核

预期结果:

  • 审核通过

实际结果:

  • 多次审核打回

bug描述:

上架vivo和荣耀应用市场隐私不合规怎么解决,unicloud,云打包了国内广告联盟SDK,HBuilderX 4.36
审核意见:

  1. 您提交的应用隐私检测未通过,经过检测发现以下隐私相关的问题:
    • (1)APP未见向用户告知且未经用户同意,在后台运行时,存在监听用户手机安装、卸载应用情况,非服务所必需且无合理应用场景,超出与收集个人信息时所声称的目的具有直接或合理关联的范围。
      建议您采取以下措施进行整改:
    • (1)APP存在在静默状态下或在后台运行时收集个人信息的情况,建议在隐私政策说明相关情况,并以隐私政策弹窗的方式向用户明示;
    • (2)APP在静默状态下或在后台运行时,收集IMEI、IMSI、设备MAC地址、软件安装列表、位置、联系人、通话记录、日历、短信、本机电话号码、图片、音视频等个人信息不应超出其所明示的收集目的的合理关联范围。

21 回复

appid发一下。然后把两个平台的检测报告也都发出来


荣耀尝试申诉:本应用没有这些问题 再提交后反馈 审核结果: 不通过 审核意见: 1.您提交的应用在后台/静默状态下超范围收集个人信息(快手SDK监听用户安装、卸载应用)行为,不存在合理场景,请去除快手SDK监听安装、卸载广播的行为。

回复 sky天空: 用最新的HBUilderX重新打包再去检测试一下(如果是最新也要重新打包一次)

回复 DCloud_Android_zl: 重新打包后检测结果还是不通过,这是最新检测报告 https://cloudtest-file.vivo.com.cn/appstore/cloudtest/pdf/20241227/202412271330320764651165.pdf

用最新的HBUilderX 4.43版本打包

回复 DCloud_Android_zl: 荣耀审核打回 检测报告https://bj.bcebos.com/springer/apionline/autoscan_report/100789/21868784_0da3b999f3216d29073dc108e751f224/sky%E6%98%9F%E6%B2%B3%E5%85%89%E9%81%87%E6%B5%8B%E8%BA%AB%E9%AB%98_1.1.3_App%E9%9A%90%E7%A7%81%E5%90%88%E8%A7%84%E4%B8%8A%E6%9E%B6%E6%8A%A4%E8%88%AA%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A_20241227134954.pdf?authorization=bce-auth-v1%2FALTAKFdQsjnBIKDYPaJtOilqPL%2F2024-12-27T05%3A50%3A04Z%2F315360000%2F%2F279315e013452f9188e2157145207da34563188d588e293478f2d9e6b1976d53 堆栈https://view.officeapps.live.com/op/view.aspx?src=https%3A%2F%2Fbj.bcebos.com%2Fspringer%2Fapionline%2Fautoscan_report%2F100789%2F21868784_0da3b999f3216d29073dc108e751f224%2Fsky%25E6%2598%259F%25E6%25B2%25B3%25E5%2585%2589%25E9%2581%2587%25E6%25B5%258B%25E8%25BA%25AB%25E9%25AB%2598_1.1.3_164%25E5%258F%25B7%25E6%2596%2587%25E8%25BF%259D%25E8%25A7%2584%25E8%25A1%258C%25E4%25B8%25BA%25E6%2595%25B0%25E6%258D%25AE_20241227134954.xlsx%3Fauthorization%3Dbce-auth-v1%252FALTAKFdQsjnBIKDYPaJtOilqPL%252F2024-12-27T05%253A50%253A10Z%252F315360000%252F%252F5824c2bfa76fdc14eccadb517c0850b770bac9305b0f4c56f72f209a19f0ed59&wdOrigin=BROWSELINK

回复 sky天空: 百度我这边需要跟他们发工单咨询一下,紧急上架可以后台先关闭百度,我们这边有结果会同步。

回复 DCloud_Android_zl: 好的,谢谢

回复 DCloud_Android_zl: 又打回了,不通过原因是 SDK在静默状态下或在后台运行时,收集 IMEI、IMSI、设备 MAC 地址、Android ID、OAID、MEID、ICCID、SN、SUCI、SUPI、软件安装列表、位置、联系人、通话记录、日历、短信、本机电话号码、图片、音视频等个人信息,超出其所明示的收集目的的合理关联范围 检测报告:https://cloudtest-file.vivo.com.cn/appstore/cloudtest/pdf/20241227/202412271819307754570018.pdf 堆栈:https://view.officeapps.live.com/op/view.aspx?src=https%3A%2F%2Fcloudtest-file.vivo.com.cn%2Fappstore%2Fcloudtest%2Fxlsx%2F20241227%2F202412271819314458600777.xlsx&wdOrigin=BROWSELINK

回复 DCloud_Android_zl: 辛苦看一下

将这段代码放到app.vue的onlaunch中,然后重新打包提测试一下

回复 sky天空: 私聊单独发一下报告和堆栈吧,安装包也发一下

回复 DCloud_Android_zl: 冒昧请问一下你们这个问题解决了嘛

针对您提到的uni-app在vivo和荣耀应用市场上架时遇到的隐私合规问题,即APP在未向用户告知且未经用户同意的情况下,在后台运行时监听用户手机安装卸载应用的情况,这里提供一个可能的解决方案代码示例,以及相关的隐私政策调整建议。

代码示例:停止后台监听应用安装卸载

首先,确保您的APP没有在不必要的情况下监听应用安装卸载事件。如果您确实需要此功能,应该在用户明确同意的前提下进行。以下是一个示例,展示如何在用户同意后才开始监听,并在用户不同意时停止监听。

// 假设您有一个隐私设置页面,用户可以在这里同意或拒绝监听
let userConsented = false; // 用户是否同意监听

// 监听应用安装事件(仅作为示例,实际应用中可能需要更复杂的逻辑)
function startListeningForInstalls() {
  if (userConsented) {
    plus.device.on('install', function(e) {
      console.log('App installed:', e.name);
      // 处理安装事件
    });
  }
}

// 监听应用卸载事件(同样,仅作为示例)
function startListeningForUninstalls() {
  if (userConsented) {
    plus.device.on('uninstall', function(e) {
      console.log('App uninstalled:', e.name);
      // 处理卸载事件
    });
  }
}

// 用户同意监听时的处理
function userAgreeToListen() {
  userConsented = true;
  startListeningForInstalls();
  startListeningForUninstalls();
}

// 用户拒绝监听时的处理
function userDisagreeToListen() {
  userConsented = false;
  // 停止监听(实际上,由于事件监听器已经在不同意的情况下不会启动,这一步更多是形式上的)
}

// 在APP启动时检查用户设置并相应处理
function appStartup() {
  // 假设有一个函数loadUserPrivacySettings()可以加载用户的隐私设置
  loadUserPrivacySettings().then(settings => {
    if (settings.consentedToListen) {
      userAgreeToListen();
    } else {
      userDisagreeToListen();
    }
  });
}

appStartup();

隐私政策调整建议

除了代码层面的调整,您还需要在隐私政策中明确告知用户APP会监听应用安装卸载事件,并说明这一功能的目的、数据如何处理以及用户如何控制这一行为。确保隐私政策清晰、易懂,并在APP内提供易于访问的隐私政策链接。

最后,提交更新后的APP版本到vivo和荣耀应用市场时,附上更新说明和已修改的隐私政策,以证明您已经采取了措施来解决隐私合规问题。

回到顶部