IMEI (Android, 历史)/ MEID (CDMA): 过去是唯一设备标识符,但现在高版本 Android 对普通应用获取此信息有严格限制。iOS 禁止获取。
MAC 地址: 网卡物理地址。同样,现代操作系统(尤其是 Android 10+ 和 iOS)对获取 Wi-Fi 或蓝牙 MAC 地址有严格限制,应用通常只能获取随机化的 MAC 地址或无法直接获取。
Android ID / Advertising ID (AAID) / Identifier for Advertisers (IDFA): 这些是操作系统提供的、旨在替代硬件标识符的软件标识符。它们可以被应用获取(在用户同意广告追踪的前提下,iOS 需要 ATT 框架授权),用于广告和分析目的。它们是“非敏感”但具有唯一性的标识符。
基本设备参数:
设备型号 (e.g., iPhone 12, Pixel 6): 通过系统 API 直接读取。
操作系统版本 (e.g., Android 13, iOS 16): 通过系统 API 直接读取。
设备制造商 (e.g., Apple, Samsung, Xiaomi): 通过系统 API 直接读取。
设备分辨率与屏幕尺寸: 应用需要知道屏幕尺寸来布局 UI,这是基本功能需求。
设备语言和区域设置: 用于提供本地化内容。
设备时区: 用于显示正确的时间戳。
设备方向 (横屏/竖屏): 通过传感器或系统事件监听,用于调整布局。
电池状态 (电量、是否充电): 可能用于优化后台任务(如减少刷新频率以省电)。
网络信息:
IP 地址: 这是网络通信的基础。应用服务器在收到请求时,自然会看到客户端的公网 IP 地址(可能是 NAT 后的)。这可以用来推断大致的地理位置(城市级,不精确)、网络运营商信息(ISP),并用于基本的反欺诈(如检测 VPN)。
网络连接类型 (e.g., Wi-Fi, 4G/5G): 通过系统 API 获取。应用可能据此调整下载策略(如只在 Wi-Fi 下预加载图片)。
网络信号强度 (粗略): 可能用于诊断连接问题或调整策略。
应用安装与运行信息:
应用版本号: 用于提供更新提示和兼容性处理。
应用安装来源 (e.g., App Store, Google Play, 其他商店): 可能用于统计和分析。