标题iOS获取设备UDID/IMEI信息

通过Safari与mobileconfig获取iOS设备UDID

UDID (Unique Device Identifier),唯一标示符,是iOS设备的一个唯一识别码,每台iOS设备都有一个独一无二的编码,UDID其实也是在设备量产的时候,生成随机的UUID写入到iOS设备硬件或者某一块存储器中,所以变成了固定的完全不会改变的一个标识,用来区别每一个唯一的iOS设备。

随着苹果对程序内获取UDID封杀的越来越严格,私有api已经获取不到UDID,Mac地址等信息,继而出现了使用钥匙串配合uuid等等方法变相实现

如果你的app是企业应用呢,不需要审核,那么直接用就好了,那要是你的app是需要提交商店的那可能不会审核通过。

苹果的官方文档是这样介绍的:

https://developer.apple.com/library/content/featuredarticles/iPhoneConfigurationProfileRef/Introduction/Introduction.html#//apple_ref/doc/uid/TP40010206-CH1-SW604

一、通过苹果Safari浏览器获取iOS设备UDID步骤

苹果公司允许开发者通过IOS设备和Web服务器之间的某个操作,来获得IOS设备的UDID(包括其他的一些参数)。这里的一个概述:

1.在你的服务器上创建一个.mobileconfig的XML格式的描述文件;

2.服务器需要的数据,比如:UDID,IMEI需要在.mobileconfig描述文件中配置好,以及服务器接收数据的URL地址;

3.用户在客户端通过某个点击操作完成.mobileconfig描述文件的安装;

4.手机在安装描述文件时,会向描述文件中配置好的URL发送UDID,IMEI等设备信息数据;

5.服务端收到设备信息数据后,通过scheme打开客户端的app将设备信息作为参数传给客户端;

6.客户端在appDelegate里面将 这个参数存到本地 ,并且存到钥匙串,这样即时app被卸载重装,也无需再次安装;

二、.mobileconifg描述文件中配置

    <key>PayloadContent</key><dict><key>URL</key><string>http://127.0.0.1:6699/receive.do</string><key>DeviceAttributes</key><array><string>SERIAL</string><string>MAC_ADDRESS_EN0</string><string>UDID</string><string>IMEI</string><string>ICCID</string><string>VERSION</string><string>PRODUCT</string></array></dict><key>PayloadOrganization</key><string>dev.aaaaa.org</string><key>PayloadDisplayName</key>查询设备UDID<key>PayloadVersion</key>1<key>PayloadUUID</key><string>3C4DC7D2-E475-3375-489C-0BB8D737A653</string><key>PayloadIdentifier</key><string>cn.com.aaaa</string><key>PayloadDescription</key><string>本文件仅用来获取设备ID</string><key>PayloadType</key><string>Profile Service</string>

其中,DeviceAttributes对应的key是你想要的信息,还可以添加其他信息,操作系统(iOS)安装完描述文件,获取完这些信息,会将这些信息进行编码,传值给你描述文件中的URL地址,这里需要修改URL就好。

三、服务端

1、mobileconfig下载时设置文件内容类型Content Type为:application/x-apple-aspen-config

2、接口状态码(一般是200),在这里返回状态码301,重定向(必须code码是301(永久性转移),302(暂时性转移)会安装失败)

3.服务器提供接口,然后服务器重定向完之后,将参数 通过scheme打开客户端的app将参数传回来

也可以客户端本地起服务,写一个接口,这里用网上的Server服务器的iOS代码起服务。

最后附上demo

https://github.com/hyb2006239/iOS-UDID.git

iOS获取设备UDID/IMEI信息相关推荐

  1. iOS获取设备型号、设备类型等信息

    iOS获取设备型号.设备类型等信息 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然而他们都陆陆续续倒在了苹果的门下.苹果目前提供了2个方法供App获取设 ...

  2. iOS获取设备唯一标识的各种方法?IDFA、IDFV、UDID分别是什么含义?

    http://www.ithao123.cn/content-8688001.html iOS获取设备唯一标识的各种方法?IDFA.IDFV.UDID分别是什么含义? [摘要:1.UDID (Uniq ...

  3. iOS获取设备和APP权限信息(内含plist文件的读写)

    文章目录 前言 获取设备当前的各种信息 获取APP能获取到的权限信息(内含plist文件的读写) 2019.11.04 更新 前言 下面各种获取到的信息分为了两大类,一种是获取APP载体设备当前的各种 ...

  4. iOS获取设备的唯一标识的方法

    各种获取设备唯一标识的方法介绍 一.UDID(Unique Device Identifier) UDID的全称是Unique Device Identifier,它就是苹果iOS设备的唯一识别码,它 ...

  5. IOS获取设备 ID

    iOS获取设备 ID 命令行方式 $ xcrun simctl list 1 这行命令会列出你的所以模拟器信息,里面有类似 XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 的 ...

  6. iOS 获取设备型号(iPhone+iPad)最新总结

    在游戏开发中,我们常常需要获取iOS设备信息来进行数据统计和性能适配. 比如在数据统计时,需要获取当前设备的名称,类型,系统名称,系统版本,UUID等,这些都可以通过UIDevice类来获取.代码如下 ...

  7. 获取设备和 App 信息

    设备对照表:https://www.theiphonewiki.com/wiki/Models 获取设备和 App 信息代码: 1 NSLog(@"设备信息如下"); 2 NSLo ...

  8. snmp获取设备相关管理信息

    snmp获取设备相关管理信息 在本文中,作者将向我们展示如何用snmp代理监视网络设备,甚至发送软件警告. 网络上很多代理在为我们服务.只要我们开启UDP/161,162端口,这些代理就会以Manag ...

  9. 获取设备的型号信息,比如iPhone5s,iPhone5等等

    获取设备的型号信息,比如iPhone5s,iPhone5等等. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ...

最新文章

  1. NLP汉语自然语言处理入门基础知识介绍
  2. 一元享移动怎么样_移动大王卡千万别买!!!
  3. windows server服务器上部署java+tomcat网站域名配置
  4. lucene源码分析(1)基本要素
  5. Vigenere加密法C++实现代码
  6. 【测试工具】在linux测试环境访问禅道数据库
  7. conda配置环境变量并且激活
  8. linux tail 查找字符串,linux 查找包含字符串的文件
  9. Oracle多表联查时,某个字段由逗号分割的字符串组成,关系是此字符串切割后,对应另一张表某个字段,如何实现一条sql完成查询?
  10. android壁纸路径/目录
  11. 倒立摆 adams matlab,基于adams和matlab的一级倒立摆联合仿真
  12. PSpice 使用中的若干问题
  13. c语言程序设计基本模板,《C语言程序设计基础教程》试讲教案模板
  14. SuperMap知识总结
  15. 51单片机学习——9--温度传感器DS18B20
  16. CSDN取消手机绑定
  17. 2020,多少新能源车企倒在风口中?
  18. c#加入json库引用,添加JSON包引用;新到Java
  19. 快速插入数据mysql数据库
  20. python多用户B2C商城系统毕业设计开题报告

热门文章

  1. CUDA----规约
  2. linux系统工程师面试题(附答案)
  3. 解决Can not connect to local MySQL server through socket tmpmysql.sock (2)
  4. JVM垃圾回收之哪些对象可以被回收
  5. 第十六周 结构体复数计算
  6. 快趣拼拼团返利模式讲解
  7. 图解redis的AOF持久化
  8. 物联网竞赛AIOT智慧牧场项目问题总结
  9. 永磁同步电机电位器调速及数码管实时显示
  10. android小辣椒LAX7,小辣椒X7和vivo x9哪个好?小辣椒X7与vivo x9详细区别对比评测