用这款软件,看一眼 App 在用户背后做了些什么
近几日一条关于「iOS 版微信/QQ/淘宝等多款 App 在后台反复读取用户相册」的微博上了热搜,对此微信回应称「iOS 系统为 app 开发者提供相册更新通知标准能力,相册发生内容更新时会通知到 app,提醒 app 可以提前做准备,app 的该准备行为会被记录成读取系统相册」。
简单来说,在使用微信时,如果有新的照片,我们点击「+」号会直接弹出图片的预览并且可以快速发送。
微信会在收到 iOS 系统照片有变化的通知后进行「准备行为」,来为用户提供「更流畅的体验」。

那么这样静默的举动,是如何被用户发现的呢?下面这篇文章就带你了解下微博网友提到的这款《隐私洞见》 app。
隐私洞见,洞悉隐私
iOS 15 带来了一项「App 隐私报告」功能,它允许系统记录 7 天内的所有 app 访问位置、照片、摄像头、麦克风以及联系人的频率。这项功能默认是关闭的,首先需要打开「设置」,进入「隐私」,在设置页面的最底处进入「记录 App 活动」并开启。

由于 iOS 内置的隐私报告功能暂未提供,这时候我们需要通过第三方 app《隐私洞见》来分析与查看 app 的活动记录。
在 App Store 搜索《隐私洞见》进行安装。

初次打开 App 便会进入使用引导,由于上一步已经开启了「记录 App 活动」,我们只需要回到「设置」中,点击「存储 App 活动」。此时弹出分享界面,我们在弹出的菜单中找到「导入到隐私洞见」即可。

导入活动报告后,我们可以看到从开始「记录 App 活动」到现在,手机内的 app 都进行了什么操作。

点击某个 app 可以查看详情,其中包括了概览页面,访问记录列表,以及每次访问记录的开始结束时间信息。

网络信息是我们不太需要关注的部分,而如果看到有 app 的访问日志不是 0,就可以稍加留意,观摩一下了。
在「访问记录」列表中我们还可以按照特定的操作进行筛选,例如只看 QQ 访问位置信息的记录。

导入后如果看到的是一些英文字符串表示的包名,我们可以尝试获取下。点击 app 进入到详情页后点击「尝试识别」,并在弹出的对话框中找到自己下载 app 所属的商店。
![]()
如果 App Store 中 app 是正常上架的状态,那么通常就会识别出来,同时其它未识别的 app 也会一并识别出图标和名称。而如果是像上图「滴滴」这种不在 App Store 中的 app 则无法识别出来。
由于《隐私洞见》上架不久,还存在一些不影响使用的 Bug,例如尝试识别后 app 闪退,或者识别后依旧无结果,一般退掉 app 重新启动就正常了。
手机厂商为用户隐私做了什么
在每一次的 iOS 更新都能看到 iOS 为保护用户隐私做出的努力。iOS 15 的更新内容中,我们可以看到新增的隐私相关(暂未完整完成「App 隐私报告」)的功能:

系统增加了很多的限制来框住开发者,使其获取到更少的信息,甚至只能一次性地获取信息,来确保用户仅在自己了解自己的举动,并且需要让 app 来获取信息的时候才能获取到一定的隐私信息。
「App 隐私报告」这一功能其实很多安卓用户的小伙伴并不陌生,查看权限申请记录是很多安卓手机厂商的系统中都有的功能。
在小米的 MIUI 中可以看到「应用行为的记录」,并查看系统是允许还是拒绝了权限的获取。

在魅族的 Flyme 中同样有这一功能。

而在 iOS 15 中,苹果也抓紧补上了这一功能的空缺,让用户可以更好地了解手机中所有 app 悄无声息做的事情。不过当前版本的 iOS 查看「App 隐私报告」还不是一个完整的功能,而且需要配合第三方 app(如「隐私洞见」)来分析和呈现访问活动。
虽然应用的功能是如何实现对用户是一个黑盒子,但是所有在应用之外的操作并不会不被感知。手机系统是一个「观察者」,默默记录着 app 的所有对系统产生的行为,而各个厂商的手机系统也都在努力变成「干涉者」,来禁止 app 的越界操作。
如何更好地保护隐私
我们总应以最坏的情况来揣测 app 对隐私的需求。
怎么理解上面这句话呢?手机 app 获取很多用户隐私信息这件事情,在用户角度应该视之为洪水猛兽,而不是当做无所谓,在 app 正常工作的情况下,应当只给 app 最少的应用权限。以 QQ 为例,我们来看一下什么权限对应了什么情况,到底该不该给:

- 首先是「位置信息」权限。QQ 告诉我们它使用位置信息的用处,而我都不需要这些功能,那么选择「永不」是理所应当的。如果需要使用位置,那么绝大多数 app 使用「下次询问或在我共享时询问」这一级别是足够的了,这样每次使用位置时 iOS 会先弹出授权框,并让用户选择如何授权,通常只授权一次即可。而在「使用 App 期间」在使用一些与定位强相关的应用时才有必要启用,例如出行导航等。几乎没有一个 app 需要始终授权位置信息才能正常使用。「精确位置」这一功能仅需要精准定位的时候才需要打开,例如导航、准确位置共享时。而在可以手动录入地址的情况下,也完全不需要定位来获取位置,或者定位获取后即使关闭即可。
- 「通讯录」功能则显而易见,一般 app 需要获取通讯录信息,都是为了为了根据通讯录来匹配可能的好友。可是这个「便捷」的功能我们真的需要吗?相比起社交关系的泄漏的后果,我想答案肯定是否定的。
- 「本地网络」这个权限就比较有趣了,A 君用它最多的情况便是手机投屏到电视了,这一操作需要手机能够扫描到同一网络下的其他设备,因此开启是有意义的。提供了「本地网络」权限,手机 app 便能扫描到同一网络下其他的设备,事实上,这些信息对于很多 app 的功能来讲是没有用处的,但是也有一些 app 会获取到设备信息并向局域网内其他设备上推送广告等。因此绝大多数应用,完全不需要这个权限。
- 「麦克风」、「运动与健身」、「相机」、「面容 ID」这些都需要根据 app 的功能来判断是否提供,需要发送语音,录制声音,获取步数,拍照扫码,人脸识别等,依据功能不同提供不同的权限。
- 「Siri 与搜索」可以让 app 支持通过 Siri 来交互,这个视个人情开启与否。
- 「通知」权限,除了必要的通讯和需要强提醒的 app,其他的一律关闭即可,这样也会免去各种营销信息和无用推广的烦扰。
- 「后台 App 刷新」权限全部都关闭,也并不会损失什么,而且还会更省电。
- 「无线数据」可以根据 app 的情况来选择,现在大多数 app 都需要联网,所以 A 君一般都会选择「无线局域网与蜂窝数据」。如果流量不是很多的小伙伴可以视 app 情况选择「无线局域网」。对于不需要联网就能完成工作的 app,果断选择「关闭」。
除了上述权限的问题,我们可以选择「要求 App 不追踪」来避免泄露 IDFA(广告主标识符,用于 app 向用户定向推送广告)。
保护隐私,从现在做起!
