你有没有遇到过这种情况:刚在某个购物APP里看了几双运动鞋,转头刷社交媒体,广告位就跳出同款推荐?很多人第一反应是手机被“监听”了,其实更可能的原因是——APP获取了你的网络标识符。
什么是网络标识符?
网络标识符不是手机号,也不是身份证号,而是一串由系统生成的唯一代码,比如Android的AAID(Android Advertising ID)或iOS的IDFA(Identifier for Advertisers)。它不直接暴露你的身份,但能标记你的设备,让APP知道“这台手机之前来过”。
举个例子:你常在某新闻APP上看汽车资讯,系统通过标识符记住了这个偏好。下次打开另一个合作广告平台的APP,它也能读取这个标识符,于是给你推汽车广告。这就是常见的“跨应用追踪”。
APP拿标识符到底合不合法?
关键看两点:有没有告知你,以及有没有让你选择同意。
根据《个人信息保护法》,收集任何可识别个人的信息都必须经过用户明确授权。网络标识符虽然不像姓名住址那么敏感,但长期追踪仍可能还原出你的行为习惯,属于个人信息范畴。也就是说,APP不能偷偷摸摸地拿,得先弹个提示框,让你点“同意”才行。
现实中不少APP的做法是:把授权协议写得又长又绕,或者默认勾选“同意”,甚至不给关闭选项。这种“套路式同意”其实已经踩了法律红线。
怎么查哪个APP动了你的标识符?
安卓用户可以进入“设置-隐私-广告”,看到最近访问过AAID的应用列表;iPhone则在“设置-隐私与安全-跟踪”里,能控制每个APP是否允许使用IDFA。关掉后,你会发现广告变得“没那么懂你”了。
有些工具类APP,比如手电筒或壁纸软件,根本不需要个性化推荐,却也在申请跟踪权限,这就值得警惕。你可以直接拒绝,不影响基本功能使用。
开发者该怎么合规获取?
正规做法是在用户首次启动时,用清晰语言说明用途,比如:“我们使用广告标识符为你推荐更相关的商品,你可以随时在系统设置中关闭。” 并提供“不同意”选项,且不同意也不该限制核心功能。
技术上,合规调用Android AAID的代码应类似这样:
AdvertisingIdClient.Info adInfo = AdvertisingIdClient.getAdvertisingIdInfo(context);
String advertisingId = adInfo.getId();
boolean limitAdTracking = adInfo.isLimitAdTrackingEnabled();
if (!limitAdTracking) {
// 用户未禁止广告追踪,可安全使用
}
如果用户开启了“限制广告跟踪”,开发者就必须停止使用该标识符,改用匿名统计方式。
普通用户能做什么?
别急着卸载所有APP。你可以定期检查系统设置里的权限记录,对那些明显越界的——比如计算器要定位、闹钟要通讯录——直接禁止。同时开启系统级的“禁止跟踪”开关,相当于给标识符加了一道锁。
更重要的是养成习惯:下载新APP时多看两眼权限说明,遇到强制索权又无法关闭的,不妨换个替代品。市场倒逼之下,乱来的APP自然会减少。