iOS 唯一标识符问题
tangyumeng
由 tangyumeng
发布于 2013年11月13日
无人欣赏。
iOS6以及之前使用OpenUDID没有问题。iOS7使用OpenUDID好像不推荐,让使用 advertisingIdentifier。 但是这样的话,想要唯一识别一个设备,假设支持5,6,7 那只能5,6使用OpenUDID,7使用advertisingIdentifier。 并且advertisingIdentifier 可以在设置内随便重置。。这样的话,有没有一个比较统一的方法可以统计。 还有人说OpenUDID生成的标示符可能会造成不同设备生成相同的字符串。。
这是一篇OpenUDID不推荐在iOS7使用OpenUDID的文章。 iOS7不推荐使用OpenUDID
共5条回复
楼长
·
nickel
回复于 2013年11月13日
就是为了杜绝你获得可以辨别不同设备的绝对唯一标识。所以现在推荐使用的是自己生成的UDID,然后自己保存下来,如果用户重装就会使用新ID,无法做到绝对唯一性。
2楼
·
tangyumeng
回复于 2013年11月13日
+(NSString *)admUUID;
{
NSString * uuid = [SSKeychain passwordForService: kADMUUIDKeyChainService account: kADMUUIDKeyChainAccount];
if (uuid) {
return uuid;
}
CFUUIDRef puuid = CFUUIDCreate( nil );
CFStringRef uuidString = CFUUIDCreateString( nil, puuid );
NSString * result = (NSString *)CFBridgingRelease(CFStringCreateCopy( NULL, uuidString));
CFRelease(puuid);
CFRelease(uuidString);
[SSKeychain setPassword: result forService: kADMUUIDKeyChainService account: kADMUUIDKeyChainAccount];
return result;
}
现在我自己生成UUID 使用keychain 保存了。
3楼
·
gjl7223167
回复于 2014年07月28日
如果刷机了呢
4楼
·
terryso
回复于 2014年07月28日
3楼 @gjl7223167 刷机了,神仙都救补回了。。。
5楼
·
gjl7223167
回复于 2014年07月31日
现在来说 没有真正的唯一标识了是不