zoukankan      html  css  js  c++  java
  • 怎样获取ios设备的唯一标识

    非常多地方都会须要用到唯一标志。

    比方:

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

    2. 想把app相关的文件加密,密钥哪里来的?有些人可能会说hard code,可是hard code的key比較easy被破解。而去hard code密钥加密的文件能够copy到其它设备。比方游戏的本地文件保存了一些游戏相关的数据。那么仅仅要有一台机器购买100个金币,然后就能够把本地文件copy给其它设备,其它设备也能够有100金币了。由于全部的设备用的是同一个hard code密钥。


    假设我们能够获取设备唯一的标识比方一个id,那么我们就能够用这个id当作username。或者直接用这个id当作密钥。这样就会好非常多。比方游戏本地文件就具有唯一性了。就算copy到其它设备,别人也用不了,由于密钥不一样。


    曾经的iphone是能够获取设备的udid的,非常easy:

    [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的方式。



  • 相关阅读:
    Chapter 8. 面向对象(类库、委托)
    Chapter 8. 面向对象(多态--接口)
    练习:C# -- 多态
    Chapter 8. 面向对象(多态--抽象类)
    Chapter 8. 面向对象(多态--虚方法)
    Chapter 8. 面向对象(继承)
    Chapter 8. 面向对象(封装)
    Chapter 8. 面向对象(类、对象、字段、方法、属性、构造函数)
    练习、C# 结构体、冒泡排序
    1月19日(HTML之旅) CSS样式表
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/6952863.html
Copyright © 2011-2022 走看看