1.移动端信息采集实践结果
以下是移动端信息采集实践所得结果的表格。表格中标有红色的采集点为重要信息;表格中的U代表在Android6.0以下可以获取该信息,在Android6.0以上不可以获取该信息。
模块 | 平台 | ||||
iOS | Android | ||||
模块名 | 采集点 | 是否可以获取(Y/N) | 是否需要权限(Y/N) | 是否可以获取(Y/N) | 是否需要权限(Y/N) |
硬件信息 | 本机名称 | Y | N | N | N |
设备类型 | |||||
设备名称 | Y | ||||
屏幕分辨率 | |||||
系统名称 | |||||
系统版本号 | |||||
本机语言 | |||||
手机序列号(IDFV) | |||||
广告标识符(IDFA) | |||||
电池电量 | |||||
充电状态 | |||||
CPU核数 | |||||
CPU架构 | |||||
磁盘总容量 | |||||
磁盘可用容量 | |||||
内存总容量 | |||||
内存可用容量 | |||||
手机厂商 | |||||
基带版本 | N | N | |||
内核版本 | |||||
手机芯片型号 | |||||
CPU最大频率 | |||||
CPU最小频率 | |||||
CPU当前频率 | |||||
CPU时钟频率 | |||||
AndroidID | |||||
网卡MAC地址 | U | ||||
IMEI | N | N | Y | Y | |
网络相关 | 网络类型 | Y | N | Y | Y |
SSID | |||||
IP地址 | |||||
应用信息 | 应用名称 | Y | N | Y | N |
应用包名 | |||||
应用版本号 | |||||
蓝牙 | MAC地址 | N | N | U | Y |
附近蓝牙名称 | Y | Y | Y | ||
GPS | 经纬度 | Y | Y | Y | Y |
具体位置描述 | |||||
通讯录 | 联系人姓名 | Y | Y | Y | Y |
联系人电话 | |||||
照片 | 获取所有照片 | Y | Y | Y | Y |
通话记录 | 通话类型 | N | N | Y | Y |
通话时间 | |||||
通话时长 | |||||
通话者名字 | |||||
通话号码 | |||||
日历 | 添加系统日历事件 | Y | Y | Y | Y |
读取系统日历事件 | |||||
提醒 | 添加系统提醒事件 | Y | Y | N | N |
读取系统提醒事件 | |||||
健康 | 运动步数 | Y | Y | N | N |
运动距离 | |||||
GameCenter | 玩家ID | Y | N | N | N |
玩家昵称 | |||||
SIM卡 | 手机号码 | N | N | Y | Y |
SIM序列号 | |||||
IMSI | |||||
SIM卡所属国家编号 | Y | N | |||
运营商信息 | |||||
浏览器 | 历史记录 | N | N | Y | Y |
书签 | |||||
其他 | 打开系统打电话界面 | Y | N | Y | N |
打开系统发短信界面 | |||||
打开系统发邮件界面 | |||||
打开系统浏览器 | |||||
获取Gmail账号 | N | Y | |||
2.移动端可采集信息重要说明
2.1iOS广告标识符IDFA的获取
1. IDFA是iOS平台的广告标识符,在不同的应用中的值相同
2. 使用IDFA作为设备的唯一标识符,在应用提交到苹果商店时,如果该应用没有使用广告,会有被拒的风险
3. 在用户不允许广告跟踪的情况下,获取到的IDFA是0
4. 开关过手机的广告跟踪开关以后,本机的IDFA会重置
2.2iOS手机序列号IDFV(identifierForVendor)
IDFV是Vendor标示符,适用于对内:例如分析用户在应用内的行为等。是给Vendor标识用户用的,每个设备在所属同一个Vender的应用里,都有相同的值。其中的Vender是指应用提供商,但准确点说,是通过BundleID的DNS反转的前两部分进行匹配,如果相同就是同一个Vender。例如对于BundleID com.somecompany.appone和com.somecompany.apptwo,他们的IDFV是相同的。
在本机所有相同Vender的应用都被删除的情况下,IDFV会被重置。
2.3GameCenter用户信息的获取
1. 使用GameCenter之前,需要如下配置工作
* 配置开发者证书
* iTunes Connect上面添加成就和排行榜
* 打开Xcode的GameCenter开关
2. 在不同设备,不同APP中,同一个GameCenter用户的用户ID相同
3. 接入GameCenter的应用,在GameCenter登录成功以后会在应用上弹出GameCenter的欢迎界面
2.4Android平台网卡MAC地址的获取
Android6.0以下的手机可以获取到网卡的MAC地址,Android6.0以上的手机获取到的网卡MAC地址都相同。
2.5Android平台蓝牙MAC地址的获取
Android6.0以下的手机可以获取到蓝牙的MAC地址,Android6.0以上的手机获取到的蓝牙MAC地址都相同。
2.6AndroidID
1. AndroidID是设备第一次启动时产生和存储的64bit的一个数,当设备被wipe后该数重置
2. 在主流厂商生产的设备上,有一个经常的bug,就是每个设备都会产生相同的AndroidID
3.附录
3.1 Android平台授权界面示例
有两种类型的授权界面可供选择,授权界面如下所示
3.2iOS平台授权界面示例
如下是读取照片时的授权界面