关闭

在iOS5中的UDID替代方案

标签: ios5deprecated服务器appleios网络
1514人阅读 评论(0) 收藏 举报
分类:

围绕iOS应用程序侵犯用户隐私问题,苹果如今已正式拒绝那些访问用户设备UDID的应用上架App Store。开发商将要对自己的应用做出更新,确定不会访问用户设备UDID后方可上架。

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------

 

在iOS5以前,可以使用 [[UIDevice currentDevice] uniqueIdentifier]获得当前设备的UDID。
    在iOS5中,apple出于用户隐私的考虑,将禁止获得设置的UDID作为当前用户的标识,这个函数被deprecated掉了。
    但是实际应用中,很多时候需要这样一个用户唯一标识码。去stackoverflow上看了一下,基本的观点就是采用MAC地址来替代UDID。
    但是直接使用MAC地址是不安全的,因为MAC地址在网络访问的时候会传给服务器,服务器很容易获得用户的MAC地址。
    所以变通的方法是在MAC地址的基础上再做一层MD5,使得生成的标识码不可逆。
    网上这篇文章 http://ios5source.com/2011/08/21/udid-alternate/ 提出用 mac + app bundle,再做MD5,最后用生成的串当作用户的标识码。应该是一个不错的方案。
     相应的源码在 github上: https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS-5

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:276620次
    • 积分:3749
    • 等级:
    • 排名:第8545名
    • 原创:61篇
    • 转载:186篇
    • 译文:0篇
    • 评论:19条
    最新评论