UIDevice统一标识符被否决了-现在该怎么办?

UIDevice统一标识符被否决了-现在该怎么办?

刚刚发现不建议使用UIDevice统一标识符属性。在……里面iOS 5在iOS 7及以上版本中不可用。似乎没有其他方法或属性可用或即将出现。

我们现有的许多应用程序都严格依赖于这个属性来唯一地识别特定的设备。我们该如何处理这个问题呢?

来自2011-2012年文件曾:

特殊考虑

不要使用uniqueIdentifier属性。若要创建特定于应用程序的唯一标识符,可以调用CFUUIDCreate函数创建一个UUID,并使用NSUserDefaults班级,等级。

但是,如果用户卸载并重新安装应用程序,则此值将是不一样的。


杨__羊羊
浏览 732回答 4
4回答

慕斯709654

创建的UUIDCFUUIDCreate 是如果用户卸载并重新安装该应用程序,则该应用程序是唯一的:每次都会得到一个新的应用程序。正如其他人所指出的,自iOS 6以来首选的解决方案是-[UIDevice IdfierForVendor]。在大多数情况下,你应该可以用它代替旧的。-[UIDevice uniqueIdentifier](但是当应用程序第一次启动时创建的UUID似乎是苹果希望你使用的)。在iOS 7中,苹果在查询MAC以具体阻止Mac作为ID的基计划。所以你现在真的应该用-[UIDevice IdfierForVendor]或者创建一个每个安装的UUID。

www说

你可以用你的选择来代替苹果UDID已经开始了。好心肠的盖基兹写的分类UIDevice会产生某种UDID基于设备MAC地址和包标识符。

小唯快跑啊

看看这个,我们可以用密钥链代替NSUserDefaults类,存储UUID由CFUUIDCreate.这样我们就可以避免UUID重新安装娱乐,并获得相同的UUID对于相同的应用程序,即使用户卸载并重新安装也是如此。UUID将在设备被用户重置时重新创建。我用这种方法SFHFKeychainUtils就像一种魅力。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

iOS