CFUUID比 advertisingIdentifier与广告。 identifierForVendor

我很困惑我应该用什么来唯一地识别我的用户?

我也想支持iOS7,但我不明白这些差异。

我目前正在使用此代码段生成UUID:

CFUUIDRef udid = CFUUIDCreate(NULL); NSString* createdUUID = (NSString *) CFUUIDCreateString(NULL, udid); [createdUUID autorelease]; CFRelease(udid); 

  • identifierForVendor用户设备上所有应用程序共享的唯一标识符。 如果用户拥有多个应用程序,则他们将共享此标识符。 如果用户删除同一供应商的所有应用程序,则将重置此标识符。
  • advertisingIdentifier唯一标识符,可用于跟踪广告用途。 可以由用户重置。
  • CFUUID只是一个每次调用它时都会创建n UUID的类。

您发布的代码每次调用时都会创建一个新的唯一标识符。 您应该将此标识符存储在NSUSerDefaults或Keychain中,并从那里读取它以构建某种用户跟踪。