首页 > 代码库 > 如何获取ios设备的唯一标识
如何获取ios设备的唯一标识
很多地方都会需要用到唯一标志。
比如:
1. 我们相用一个设备的唯一标志当作用户id,特别是网络游戏,这样就可以省去注册的麻烦。
2. 想把app相关的文件加密,密钥哪里来的?有些人可能会说hard code,但是hard code的key比较容易被破解。而去hard code密钥加密的文件可以copy到其他设备。比如游戏的本地文件保存了一些游戏相关的数据,那么只要有一台机器购买100个金币,然后就可以把本地文件copy给其他设备,其他设备也可以有100金币了,因为所有的设备用的是同一个hard code密钥。
如果我们可以获取设备唯一的标识比如一个id,那么我们就可以用这个id当作用户名,或者直接用这个id当作密钥。这样就会好很多。比如游戏本地文件就具有唯一性了,就算copy到其他设备,别人也用不了,因为密钥不一样。
以前的iphone是可以获取设备的udid的,很简单:
[UIDevice currentDevice] uniqueIdentifier]但是后来苹果公司禁止了。(如果没有记错的话,应该是从ios5开始就不能用了)
反正现在是用不了了。
在网上查了一下,在github上找到一个办法,
https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS-5
基本原理就是读取wifi芯片的mac地址,然后转换成一个hash值。
实验了一下,可行,我用的是ios skd 8
不知道苹果会不会把mac地址也禁止了。
所以最好的办法还是先使用上面的办法去获取,如果失败了,就加个错误处理,比如再采用hard code获取其他产生id的方式。
如何获取ios设备的唯一标识
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。