当前位置: 首页 > news >正文

Android应用隐私合规:解决极光推送SDK提前收集WiFi信息问题

问题描述

我的应用在送审时被检测出以下问题:

  • 极光推送SDK在未经用户同意的情况下,读取WIFI的SSID
  • 获取了BSSID和MAC地址等敏感信息
  • 触发了ACCESS_FINE_LOCATION权限
    在这里插入图片描述

从具体违规日志来看:

违规详情:content=获取WiFi连接信息(含bssid):SSID: , BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00...
callstack:android.net.wifi.WifiManager.getConnectionInfo:1677;cn.jiguang.bv.a.I:94;...

这些敏感信息涉及位置隐私,属于应用商店严格审核的部分。

SSID是什么及其用途

SSID(Service Set Identifier)就是我们常见的WiFi网络名称。极光推送SDK收集SSID主要用于:

  • 设备识别:通过网络信息帮助唯一标识设备
  • 推送优化:根据网络环境选择最佳推送通道
  • 数据分析:分析用户使用场景和网络环境

问题原因分析

这个问题的根本原因在于:极光推送SDK会在应用启动时自动执行初始化,并收集设备信息

我是在启动页这里去根据用户是否同意隐私条款的,调用JCollectionAuth.setAuth(context,boolean)的。看文档也没特殊说明啥内容。问了才知道,还必须在项目一启动就立马执行的Application中先调用JCollectionAuth.setAuth(context,false)禁止极光推送隐私权限。

极光SDK的官方人员解释说:“除了init外,其他极光接口(setbadge等)有可能导致sdk初始化”!即使我没主动调用任何极光相关方法,SDK可能也会自己偷偷"动起来"。

解决方案

  1. 关键步骤:在Application的onCreate方法中立即调用:

    JCollectionAuth.setAuth(context, false)
    

    这必须是应用启动时第一时间执行的代码之一,目的是告诉极光SDK不要初始化和收集信息

  2. 只有当用户同意隐私政策后,才能设置:

    JCollectionAuth.setAuth(context, true)
    

    然后再调用正常的初始化接口

  3. 在setAuth方法中,还可以添加额外代码来禁用SSID、BSSID和MAC地址读取:

    fun setAuth(context: Context?, auth: Boolean) {JCollectionAuth.setAuth(context, auth)// 禁用SSID、BSSID和MAC地址读取disableWifiAndMacAddressCollection(context)
    }
    
  4. 确保隐私政策中明确说明了极光SDK收集的信息内容。参考极光官方的隐私描述文档:https://docs.jiguang.cn/jpush/client/jghgzy_a_i_h

相关文章:

  • 三维底座+智能应用,重构城市治理未来
  • 【计算机视觉】OpenCV项目实战:get_inverse_perspective:基于OpenCV的透视图转化为不同平面
  • Uniapp编写微信小程序,使用canvas进行绘图
  • 企业如何将钉钉付款单高效集成到金蝶云星空?
  • 数智读书笔记系列032《统一星型模型--一种敏捷灵活的数据仓库和分析设计方法》
  • 开源数字人框架 AWESOME - DIGITAL - HUMAN:技术革新与行业标杆价值剖析
  • 从“山谷论坛”看AI七剑下天山
  • 十三、基于大模型的在线搜索平台——整合function calling流程
  • 【大语言模型ChatGPT4/4o 】“AI大模型+”多技术融合:赋能自然科学暨ChatGPT在地学、GIS、气象、农业、生态与环境领域中的应用
  • 捌拾叁- 量子傅里叶变换
  • 【深度学习】【目标检测】【Ultralytics-YOLO系列】YOLOV3核心文件detect.py解读
  • CSS:盒子模型
  • C# NX二次开发:宏录制实战讲解(第一讲)
  • 当当网Top500书籍信息爬取与分析
  • CSS transition过渡属性
  • # 交换排序:从冒泡到快速排序的深度解析
  • 全新UI彩虹外链网盘系统源码v5.6/前后端美化模板/整站+模版文件
  • 何时需要import css文件?怎么知道需要导入哪些css文件?为什么webpack不提示CSS导入?(导入css导入规则、css导入规范)
  • 【图像大模型】Stable Diffusion Web UI:深度解析与实战指南
  • istio in action之流量控制与路由
  • 巴西总统卢拉将访华
  • 李在明正式登记参选下届韩国总统
  • 1450亿元!财政部拟发行2025年中央金融机构注资特别国债(二期)
  • 七方面118项任务,2025年知识产权强国建设推进计划印发
  • 保证断电、碰撞等事故中车门系统能够开启!隐藏式门把手将迎来强制性国家标准
  • 国家主席习近平同普京总统举行大范围会谈