Как получить UUID в объекте c, например, в Java UUID используется для генерации уникальных случайных чисел, которые представляют 128-битное значение.
Как сгенерировать UUID в ios
Ответ 1
Try:
CFUUIDRef udid = CFUUIDCreate(NULL);
NSString *udidString = (NSString *) CFUUIDCreateString(NULL, udid);
UPDATE:
Начиная с iOS 6, существует более простой способ генерации UUID. И, как обычно, есть несколько способов сделать это:
Создайте строку UUID:
NSString *uuid = [[NSUUID UUID] UUIDString];
Создайте UUID:
[[NSUUID UUID]; // which is same as..
[[NSUUID] alloc] init];
Создает объект типа NSConcreteUUID
и может быть легко добавлен к NSString
и выглядит следующим образом: BE5BA3D0-971C-4418-9ECF-E2D1ABCB66BE
ПРИМЕЧАНИЕ из документации:
Примечание. Класс NSUUID не является бесплатным мостом с CoreFoundations CFUUIDRef. Используйте строки UUID для преобразования между CFUUID и NSUUID, если это необходимо. Два объекта NSUUID не могут быть сопоставимы по значению указателя (как CFUUIDRef); use isEqual: для сравнения двух экземпляров NSUUID.
Ответ 2
+ (NSString *)uniqueFileName
{
CFUUIDRef theUniqueString = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUniqueString);
CFRelease(theUniqueString);
return [(NSString *)string autorelease];
}
Ответ 3
Быстрая версия Raptor answer:
let uuid = NSUUID().UUIDString
Ответ 4
-(NSString*) myUUID()
{
CFUUIDRef newUniqueID = CFUUIDCreate(kCFAllocatorDefault);
CFStringRef newUniqueIDString = CFUUIDCreateString(kCFAllocatorDefault, newUniqueID);
NSString *guid = (__bridge NSString *)newUniqueIDString;
CFRelease(newUniqueIDString);
CFRelease(newUniqueID);
return([guid lowercaseString]);
}
Ответ 5
вы можете использовать CFUUID для iOS 5 или более низкой версии и NSUUID для iOS 6 и 7. для обеспечения большей безопасности вы можете сохранить свой UUID в цепочке ключей
Ответ 6
Я предлагаю вам проверить эту библиотеку: https://github.com/fabiocaccamo/FCUUID
Он предоставляет очень простой API для получения универсально уникальных идентификаторов с разными уровнями стойкости.
Он совместим с: iOS5, iOS6, iOS7, iOS8
Ответ 7
- (NSString*)generateGUID{
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
CFRelease(theUUID);
return [NSString stringWithFormat:@"%@", string];
}
Ответ 8
#import <AdSupport/AdSupport.h>
NSString* sClientID = [[[ASIdentifierManager sharedManager]advertisingIdentifier] UUIDString];
Лучший UUID, потому что:
- он никогда не изменится (* даже если приложение будет удалено)
- Apple одобряет это.