iOS获取硬件信息(全部)

作者: CocoFei | 来源:发表于2017-08-09 18:55 被阅读469次

    iOS系统总以保护用户隐私标榜,从禁止获取Mac地址,禁止获取UDID,禁止获取手机号码,禁止获取IMEI等等。。。,iOS开发人员总是在苹果限制的道路上斗智斗勇!

    下表中不包括用私有API获取硬件信息,因为使用私有API会被禁止上架。

    信息类型 类型说明 能否获取 示例 备注
    手机型号 具体那一款手机 支持 iPhone,iPad,iPod 通过systemInfo.machine获取
    系统版本 手机系统的版本 支持 iPhone9,1,iPhone9,2 通过systemInfo.machine获取
    屏幕分辨率 手机屏幕分辨率 支持 568×320,667×375 包括物理分辨率和逻辑分辨率
    IMEI 手机设备唯一标识 不支持 493002407599521 iOS 5之后被禁止获取
    IMSI sim卡用户身份识别码 不支持 460030912121001 只能获取部分代号
    SIM卡序列号 sim卡的唯一标识 不支持 手机卡背面4行共20个数字 无法获取
    手机号码 一般为11位数字 不支持 18888888888 iOS 5之后被禁止获取,获取值都为nil
    运营商信息 提供网络服务的供应商 支持 中国移动,中国联通,中国电信 有多种方法获取
    运行内存 手机内存RAM 不准确 647.5MB API获取的不准确
    CPU型号 CPU类型 支持 CPU_TYPE_X86_64,核心数为2 CPU类型和核心数
    手机主板型号 手机主板硬件的编号 不支持 无法获取 无法获取
    是否破解 手机是否越狱 不准确 通过判断是否存在某些文件 新越狱工具可能检测不到
    mac地址 网卡的物理地址 不支持 02:00:00:00:00:00 iOS 7之后被禁止获取
    当前网络环境 当前手机使用WiFi/4G 支持 2G/3G/4G/WIFI 状态栏获取或其他方法获取
    IP 手机连入网络的地址 不准确 111.200.9.21 使用代理情况下IP是不准确的
    GPS 卫星定位 不准确 获取经纬度反地理编码 地下室等GPS信号弱有较大误差
    设备序列号 设备唯一标识 不准确 iOS的UUID 删除重装会变,重置位置和隐私会变
    APP安装时间及更新时间 安装时间及更新时间 支持 2017/8/1 下午2:08:00 可用沙盒文件创建时间

    部分详细说明

    • 手机型号:通过systemInfo.machine获取判断是哪种设备。
    • 系统版本:通过systemInfo.machine获取设备型号后判断,例如iPhone9,1对应iPhone7,iPhone9,2对应iPhone7 Plus。
    • 屏幕分辨率:包括物理分辨率和逻辑分辨率,物理分辨率=逻辑分辨率×屏幕缩放比(就是的1x,2x,3x),1x设备现在基本绝迹,2x对应4寸和4.7屏幕,3x对应Plus设备的5.5寸屏幕。
    • IMEI:IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的"电子串号",它与每台移动电话机一一对应,而且该码是全世界唯一的。电话拨号键盘输入*#06#即可显示。
    • IMSI:sim卡中用户身份识别码,储存在SIM卡中。iOS设备现在只能通过CTTelephonyNetworkInfo获取部分信息,如中国MCC代号460,MNC中国移动为00,02,07,IMSI是由信息拼接而成,具体拼接方法Google
    • SIM卡序列号:sim卡的唯一标识,就是sim卡背面的四行数字,共20个数字。
    • 运营商信息:有多种方法获取,通过CTTelephonyNetworkInfo框架获取,或者通过遍历状态栏StatusBar图标文字获取;其中如果未安装sim卡时,国行iPhone通过CTTelephonyNetworkInfo获取为默认值中国移动。
    • 运行内存:手机运行程序时的内存RAM(不是存储空间),可通过手机型号反推,通过API获取的不准确。
    • CPU型号:能够获取CPU类型(例如32位CPU和64位CPU)和核心数(双核单核)。
    • mac地址:iOS 7之后被禁止获取,所有手机获取到的都是02:00:00:00:00:00。
    • APP安装时间及更新时间:可用沙盒文件(例如info.plist)创建时间来计算实际安装时间,也就是更新时间。至于App首次安装时间,可在沙盒存储一个时间标记,有值读取即可,无值时存入本次的安装时间。

    获取硬件信息效果图

    硬件信息截图
    如果您觉得有所帮助,请在GitHub PhoneInfoDemo上赏个Star ⭐️,您的鼓励是我前进的动力!

    相关文章

      网友评论

        本文标题:iOS获取硬件信息(全部)

        本文链接:https://www.haomeiwen.com/subject/yuvqrxtx.html