大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一.UDID(Unique Device Identifier) UDID是Unique Device Identifier的缩写,中文意思是设备唯一标识. 在很多需要限制一台设备一个账号的应用中经常会用到,在Symbian时代,我们是使用IMEI作为设备的唯一标识的,可惜的是Apple官方不允许开发者获得设备的IMEI. iOS5 sdk中的获取方法:[UIDevice currentDevice] uniqueIdentifier] uniqueIdentifier在UIDevice.h中的定义如下:@property(nonatomic,readonly,retain) NSString *uniqueIdentifier __OSX_AVAILABLE_BUT_DEPRECATED(__MAC意思是iOS2.0以上及iOS5.0以下的系统可用,但不建议使用.Apple有可能在iOS5.0之后删除该函数.iOS6之后 换成 [[UIDevice currentDevice] identifierForVendor];但是我们需要注意的一点是,对于已越狱了的设备,UDID并不是唯一的.使用Cydia插件UDIDFaker,可以为每一个应用分配不同的UDID.所以UDID作为标识唯一设备的用途已经不大了 二.UUID(Universally Unique Identifier)UUID是Universally Unique Identifier的缩写,中文意思是通用唯一识别码. 由网上资料显示,UUID是一个软件建构的标准,也是被开源软件基金会(Open Software Foundation,OSF)的组织在分布式计算环境(Distributed Computing Environment,DCE)领域的一部份.UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定. 根据以上定义可知,同一设备上的不同应用的UUID是互斥的,即能在改设备上标识应用.但是并没有明确指出能标识出装有同一应用的不同设备,但是根据我推测,这个UUID应该是根据设备标识和应用标识生成唯一标识,再经过加密而来的(纯推测). 三. UUID(Universally UniqueIDentifier) 是基于iOS设备上面某个单个的应用程序,只要用户没有完全删除应用程序,则这个UUID在用户使用该应用程序的时候一直保持不变。如果用户删除了这个应用程序,然后再重新安装,那么这个UUID已经发生了改变。通过调用[[UIDevice currentDevice]identifierForVendor];方法可以获取UUID。UUID不好的地方就是用户删除了你开发的程序以后,基本上你就不可能获取之前的数据了。 UDID(Unique Device Identifier)是一串由40位16进制数组成的字符串,用以标识唯一的设备,现在想通过代码获取是不可能的了,如果你想看看你设备的UDID,可以通过iTunes来查看。苹果从iOS5开始就移除了通过代码访问UDID的权限,所以码农啊,想知道用户设备的UDID,是不行的喽。 那么有没有另外的办法来获取用户设备的唯一标识符呢?答案是有的,当然这样的标识符不是苹果隐藏的UDID了,使用OpenUDID开源代码,这个代码通过一些特殊的算法,创建了每一个设备的唯一标识符,你可以拿过来用来识别设备了。
创新互联建站-成都网站建设公司,专注网站建设、网站制作、网站营销推广,主机域名,网站空间,网站运营有关企业网站制作方案、改版、费用等问题,请联系创新互联建站。
UDID 是由子母和数字组成的 40 个字符串的序号,用来区别每一个唯一的 iOS 设备,包括 iPhones, iPads, 以及 iPod Touches。
这些编码看起来是随机的,实际上是跟硬件设备特点相联系的。
移动广告商和游戏网络运营商往往需要通过UDID用来识别玩家用户,并对用户活动进行跟踪。
扩展资料:
替代软件
据国外媒体报道,自去年夏天禁止开发商使用唯一设备标识符(UDIDs)跟踪用户以后,苹果首次表示计划为开发商发布新的应用跟踪工具。
这看起来像是苹果的首次重大尝试,以在满足开发商合法使用数据的需要和保护用户隐私之间取得平衡。
尚不知道苹果新的应用跟踪工具将如何跟踪用户的应用使用,但它显然不会与特定设备捆绑。
不管怎么样,能否跟踪用户对应用开发商和广告网络来说关系重大,既然苹果继续坚持控制其应用生态系统的各个方面,苹果就应当承担起解决这一问题的责任。
苹果前iAd移动广告部门主管、现为移动营销公司SessionM首席执行官的拉尔斯·奥尔布赖特(Lars
Albright)表示:“每个人都在期待苹果在这方面有所行动。
业界对此有很多不同的观点,这使我们感到很困惑,我们需要减少困惑。”业界希望苹果能够取得一个平衡,让各方面都感到满意,但事情的结果很可能是,与之前开发商能使用唯一设备标识符相比,苹果可能限制开发商获得更多用户数据——这可能激怒广告商。
正如之前所报道的,由于缺乏可替代产品,苹果拒绝开发商使用iOS设备的唯一设备标识符是一个重大的问题。
随着苹果2012年全球开发者大会(WWDC)将于下周举行,有关其唯一设备标识符的替代产品问题将受到密切关注。
参考资料来源:百度百科——UDID
UDID 是由子母和数字组成的40个字符串的序,用来区别每一个唯一的iOS设备,包括iPhones, iPads, 以及 iPod touches,这些编码看起来是随机的,实际上是跟硬件设备特点相联系的,另外你可以到iTunes点击查询序列号
UDID可以关联其它各种数据到相关设备上。例如,连接到开发者账号,可以允许在发布前让设备安装或测试应用;也可以让开发者获得iOS测试版进行体验。苹果用UDID连接到苹果的ID,这些设备可以自动下载和安装从App Store购买的应用、保存从iTunes购买的音乐、帮助苹果发送推送通知、即时消息。
在iOS应用早期,UDID被第三方应用开发者和网络广告商用来收集用户数据,可以用来关联地址、记录应用使用习惯……以便推送精准广告。不少用户也对此表示苹果侵犯消费者隐私,因此在后期苹过反对开发人员使用UDID。
如何获取iOS设备UDID
连接你的ios设备(iPhone, iPad,
iPod)到你的iTunes,然后在左边的边栏点击你的设备,右边就会显示出你的设备信息,再用鼠标点击一下你的序列号那一行,就出现UDID了,出现
UDID后,直接按键盘的Ctrl+C(mac电脑复制快捷键为为Cmd+C)就可以直接复制好了,粘贴就OK。
给大家提供一个思路吧
通过安装描述文件获取设备udid
打开App先跳转安装描述文件获取udid,然后获取到的udid放在缓存,自己设置个缓存,然后本地传输到app作为设备码进行验证
因为每个验证都不同,我只能提供思路你们自己改了
也可以保存到keychain中,我用的是SFHFKeychainUtils
app验证通过后的二次验证可以提取Keychain中的udid进行验证
用127.0.0.1本地传输udid到app,可以使用 HTTPServer
切记 HTTPServer 设置的端口一定要与描述文件的接口端口一致!
否则安装描述文件将会出现 无法连接服务器 的情况
判断 POST请求,判断 /getudid 接收数据
设置接收的 xml 数据并解析 且取出解析后的 UDID 即可。