设备特定的唯一标识符

时间:2012-12-06 14:36:03

标签: iphone ios uniqueidentifier

我正在开发一个应用程序,其中我需要一个特定于设备的全局唯一标识符(即imei等)。我尝试了以下代码,但它总是生成一个新的uuid。

CFUUIDRef uuid = CFUUIDCreate(kCFAllocatorDefault);
NSString *uuidStr = ( NSString *)CFUUIDCreateString(kCFAllocatorDefault, uuid);
CFRelease(uuid);

有什么方法可以获得一个永恒的唯一标识符。

P.S:我正在使用iOS 5和iOS 6。

2 个答案:

答案 0 :(得分:3)

Apple不允许您跟踪唯一设备,因为设备可以转手,而您确实想要跟踪用户而不是设备。 Apple也认为这是对隐私的侵犯。

goto解决方案正在使用OpenUDID,它们将为每个应用程序生成一个存储在钥匙串中的唯一密钥。这意味着如果用户删除了应用程序,则钥匙串中的数据将保持不变。

答案 1 :(得分:0)

您可以创建一个唯一的密钥,并将其存储到NSUserDefaults。启动时,选中NSUserDefaults以检索密钥。它不会“幸存”删除/重新安装应用程序。