Почему мой уникальный идентификатор устройства изменился?
Я использую следующий метод в течение месяца без проблем. Идентификатор устройства не изменился даже после удаления приложения. Недавно я заметил, что мой идентификатор устройства изменился. В последнее время я много раз собирал приложения на Xcode6. Может ли это быть причиной? Я хотел бы знать точно, когда это изменилось. Это застало меня врасплох. Мне есть о чем беспокоиться, когда приложение поступит в магазин приложений? Может быть, это проблема сборки Xcode? Я просто ищу простой способ гарантировать уникальный идентификатор устройства. Я бы использовал AdvertisingIdentifer, но я слышал, что я использую его для других целей, тогда реклама будет отклонена магазином приложений. Вот код:
+ (NSString *)getUserID
{
NSString *Appname = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleName"];
NSString *retrieveuuid = [SSKeychain passwordForService:Appname account:@"user"];
if(retrieveuuid == NULL)
{
CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault);
retrieveuuid = (__bridge_transfer NSString*)CFUUIDCreateString(kCFAllocatorDefault, newUniqueId);
CFRelease(newUniqueId);
[SSKeychain setPassword:retrieveuuid forService:Appname account:@"user"];
}
NSLog(@"%@", retrieveuuid);
return retrieveuuid;
}
1 ответ
Уникальный идентификатор устройства не сохраняется. Об этом уже много раз спрашивали, и вы должны найти здесь полезную информацию. Быстрый поиск в Google выводит следующее.
https://stackru.com/search?q=iOS+UDID+replacement
Постоянный UDID-эквивалент для iOS 7?
UIDevice uniqueIdentifier устарел - что теперь делать?
iOS уникальный идентификатор пользователя
общий совет заключается в использовании CFUUID
создать свой собственный UUID
затем сохраните его в keychain