我只想知道可以从 Apple 设备(iPod Touch、iPhone 或 iPad)使用和存储在服务器上的什么来制作唯一标识符?比如 IMEI 什么的……我只需要一些独特的东西,这样我的应用程序就可以“一次从同一设备”验证。
谢谢你。
我只想知道可以从 Apple 设备(iPod Touch、iPhone 或 iPad)使用和存储在服务器上的什么来制作唯一标识符?比如 IMEI 什么的……我只需要一些独特的东西,这样我的应用程序就可以“一次从同一设备”验证。
谢谢你。
您可以使用 NSUUID。但是,这会发生变化,因此您可以通过在第一次打开应用程序时调用它并保存它来实现它。
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"HasLaunchedOnce"])
{
//App has previously launched
}
else
{
//First launch
NSString *identifierString = [[NSUUID UUID] UUIDString];
[[NSUserDefaults standardUserDefaults] setObject:identifierString forKey:@"uuidKey"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
编辑:有关更多信息和可供您使用的选项,请查看这篇精彩的文章。
如果您在 iOS 6.0 或更高版本上运行,则可以使用identifierForVendor
from UIDevice
.
NSUUID* pUUID;
UIDevice* pThisDvc;
pThisDvc = [UIDevice currentDevice];
if ( pThisDvc )
{
pUUID = [pThisDvc identifierForVendor];
}
NSUUID* identifier = [[UIDevice currentDevice] identifierForVendor];
NSString* uniqueIdentifier = [identifier UUIDString];
这将返回当前设备的唯一标识符,该标识符对于每个应用程序都是唯一的。Apple 建议将其用于一般目的和advertisingIdentifier
广告目的。
在实现用于提供广告的系统时,使用 ASIdentifierManager 类的 adsIdentifier 属性中的值而不是此属性。使用该属性要求您遵循课堂讨论中规定的指导方针,以正确使用该标识符。有关详细信息,请参阅 ASIdentifierManager 类参考。
...从这里