CFUUID创建UUID不断变化

wak*_*aka 5 uuid ios

我是初学iPhone应用程序开发人员,我试图通过IBAction按钮在标签上显示iPhone或App唯一标识符.我研究了一下,知道有些代码已被弃用,而是使用了CFUUID.下面的代码是我使用的.但是,每次触摸IBAction按钮时,UUID都会发生变化.我究竟做错了什么?

CFUUIDRef udid = CFUUIDCreate(NULL);

NSString *udidString = (NSString *) CFUUIDCreateString(NULL, udid);

uuid.text= udidString;  
Run Code Online (Sandbox Code Playgroud)

All*_*bhu 8

我认为你误解了CFUUIDCreate()它的目的,阅读你会理解的文档.

我猜这个API是正确地服务它的目的,即创建通用唯一标识符意味着每次调用它时它将随机返回唯一标识符.


bba*_*art 5

您可以使用

[[UIDevice currentDevice] uniqueIdentifier]
Run Code Online (Sandbox Code Playgroud)

但是,此方法已折旧.为了获得每个设备的唯一标识符,您仍然可以使用CFUUIDCreateString并将输出保存为用户默认值.每次应用运行时加载此值.如果应用程序被删除然后重新安装,则此值将不同.

如果您确实需要跨应用安装的唯一标识符,则可以使用网络MAC地址.

  • 将它存储在钥匙串中,它将在app删除/重新安装后继续存在:). (6认同)