从隐私协议了解Android App到底获取了哪些信息

最近没事翻看 掘金 的 《隐私协议》 ,这里从可以看到要使用掘金需要使用如下表的信息:

介绍 截图
个人信息收集清单
接入合作方清单

可以看到收集的信息有:硬件型号、操作系统版本号、国际移动设备识别码、唯一设备标识符、网络设备硬件地址、IP地址、SN、OAID、ICCID、SN、SUPI、SUCI 等。

那么这些信息是做什么的呢?这篇文章就将介绍上述这些 Android 的标识的作用和区别。

字段介绍

可以简单地把上面的标识分为 硬件相关、网络相关、系统相关、隐私相关。

  • 其中硬件相关的有:
标识 介绍 作用
SN(序列号) 厂商为每台设备分配的唯一编号(如手机包装盒 / 机身标签) 用于厂商内部管理设备生产、售后保修(凭 SN 查出厂时间、保修期限)
设备 MAC 地址 网络接口(如 WiFi、蓝牙)的硬件地址,由网络设备厂商分配 用于识别设备,作为唯一标识来识别设备

注意:在 Android 10 以后,获取 mac 地址收到了限制。网上搜了来好几种在高版本获取 mac 的地址的方式都没有效果。

  • 网络相关的有:
标识 介绍 作用
IMEI 15位数字,手机等移动终端的唯一硬件标识 让运营商识别设备合法性,防止被盗设备入网,也是售后维修的设备身份凭证
IMSI 存储在SIM卡中,关联用户的运营商账号 标识"哪个用户在使用网络",用于运营商区分用户套餐、计费和权限
MEID 类似IMEI,主要用于CDMA网络(如早期中国电信)的设备标识 与IMEI作用一致,是CDMA设备的唯一硬件凭证
ICCID 印在SIM卡上的20位数字,是SIM卡的唯一标识 识别"哪张SIM卡",用于运营商绑定SIM卡与用户账号,补卡时区分旧卡新卡
SUPI 5G网络中的核心用户标识,替代2/3/4G中的IMSI(本质是IMSI的5G升级形态) 在5G网络中永久标识用户身份,存储在USIM卡中
SUCI 5G网络中用于保护SUPI的临时标识 用户接入网络时,用SUCI替代SUPI传输,防止SUPI被窃听,保障用户隐私

注意:获取 IMEI 在 Android 10 以上需要 READ_PHONE_STATE 权限,一般的应用是无法获取的。

  • 系统相关的有:
标识 介绍 作用
Android ID 系统生成的 64 位字符串,存储在设备系统中 作用是让应用在不获取敏感通信标识的情况下,区分不同设备(如记录用户登录状态、个性化推荐),恢复出厂设置后会改变
  • 隐私相关
标识 介绍 作用
OAID 由中国信通院主导的标识,替代传统敏感标识(如 IMEI)。 作用是供广告、统计类应用标识设备,用户可在系统设置中重置或关闭 OAID,避免被长期追踪,恢复出厂设置后会改变

问题

为什么需要这么多唯一标识符?

在旧版本 Android中 ,只有 IMEI 可以唯一标识移动设备。 mac 地址 是网络模块的地址,比如 wifi模块、蓝牙模块都有 mac 地址;Android ID 则会在恢复出厂设置后会改变,因此不唯一。

在高版本 android中 ,出于隐私的考虑,限制获取 IMEImac 地址 。要获取设备唯一标识要使用其他方式。在中国,是使用 OAID 来标识的;在国外,是使用 AAID(android 广告标识)。

常用的 deviceId 是什么?

在 Android 平台,Device ID 是一种统称,与硬件相关的 ID 都可以称之为 Device ID,一般是一种不可重置的永久标识符,作用域为设备。根据设备、厂家或者 App 调用需求的不同,读取 Device ID 时可能会返回 IMEI 或其他硬件编码,但也有可能因为设备中没有相关硬件而无法获取 Device ID 或返回无效值

参考

相关推荐
雨白21 小时前
Jetpack Compose Navigation 2.x 详解
android·android jetpack
Android系统攻城狮1 天前
Android内核进阶之获取DMA地址snd_pcm_sgbuf_get_addr:用法实例(九十一)
android·pcm·android内核·音频进阶·pcm硬件参数
清空mega1 天前
Android Studio移动应用基础教程(前言)
android·ide·android studio
2501_937145411 天前
2025IPTV 源码优化版实测:双架构兼容 + 可视化运维
android·源码·源代码管理·机顶盒
zhoutanooi1 天前
安卓bp文件编译学习
android·学习
aramae1 天前
MySQL数据库入门指南
android·数据库·经验分享·笔记·mysql
百锦再1 天前
选择Rust的理由:从内存管理到抛弃抽象
android·java·开发语言·后端·python·rust·go
whatever who cares1 天前
在Java/Android中,List的属性和方法
android·java
油炸小波1 天前
09-微服务原理篇(XXLJOB-幂等-MySQL)
android·mysql·微服务
果子没有六分钟1 天前
setprop debug.hwui.profile visual_bars有什么作用
android