程序员人生 网站导航

如何获取ios设备的唯一标识

栏目:互联网时间:2014-11-12 08:35:25

很多地方都会需要用到唯1标志。

比如:

1. 我们相用1个装备的唯1标志当作用户id,特别是网络游戏,这样就能够省去注册的麻烦。

2. 想把app相干的文件加密,密钥哪里来的?有些人可能会说hard code,但是hard code的key比较容易被破解。而去hard code密钥加密的文件可以copy到其他装备。比如游戏的本地文件保存了1些游戏相干的数据,那末只要有1台机器购买100个金币,然后就能够把本地文件copy给其他装备,其他装备也能够有100金币了,由于所有的装备用的是同1个hard code密钥。


如果我们可以获得装备唯1的标识比如1个id,那末我们就能够用这个id当作用户名,或直接用这个id当作密钥。这样就会好很多。比如游戏本地文件就具有唯1性了,就算copy到其他装备,他人也用不了,由于密钥不1样。


之前的iphone是可以获得装备的udid的,很简单:

[UIDevice currentDevice] uniqueIdentifier]
但是后来苹果公司制止了。(如果没有记错的话,应当是从ios5开始就不能用了)

反正现在是用不了了。


在网上查了1下,在github上找到1个办法,

https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS⑸

基本原理就是读取wifi芯片的mac地址,然后转换成1个hash值。

实验了1下,可行,我用的是ios skd 8


不知道苹果会不会把mac地址也制止了。

所以最好的办法还是先使用上面的办法去获得,如果失败了,就加个毛病处理,比如再采取hard code获得其他产生id的方式。



------分隔线----------------------------
------分隔线----------------------------

最新技术推荐