what - uuid ios
Cómo crear un GUID/UUID usando el iPhone SDK (8)
Aquí está el código simple que estoy usando, compatible con ARC.
+(NSString *)getUUID
{
CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault);
NSString * uuidString = (__bridge_transfer NSString*)CFUUIDCreateString(kCFAllocatorDefault, newUniqueId);
CFRelease(newUniqueId);
return uuidString;
}
Quiero poder crear un GUID / UUID en el iPhone y el iPad.
La intención es poder crear claves para datos distribuidos que sean todos únicos. ¿Hay alguna manera de hacer esto con el SDK de iOS?
En Swift 3.0
var uuid = UUID().uuidString
En Swift :
var uuid: String = NSUUID().UUIDString
println("uuid: /(uuid)")
En iOS 6 puedes usar fácilmente:
NSUUID *UUID = [NSUUID UUID];
NSString* stringUUID = [UUID UUIDString];
Más detalles en las documentaciones de Apple.
He cargado mi implementación simple pero rápida de una clase Guid para ObjC aquí: obj-c GUID
Guid* guid = [Guid randomGuid];
NSLog("%@", guid.description);
Puede analizar desde y hacia varios formatos de cadena también.
La técnica más sencilla es usar NSString *uuid = [[NSProcessInfo processInfo] globallyUniqueString]
. Ver la referencia de la clase NSProcessInfo .
Revisando la documentación del desarrollador de Apple, encontré que el objeto CFUUID está disponible en el iPhone OS 2.0 y versiones posteriores.
[[UIDevice currentDevice] uniqueIdentifier]
Devuelve la ID única de tu iPhone.
EDITAR:
-[UIDevice uniqueIdentifier]
ahora está en desuso y las aplicaciones están siendo rechazadas en la App Store por usarlo. El método a continuación es ahora el enfoque preferido.
Si necesita crear varios UUID, solo use este método (con ARC):
+ (NSString *)GetUUID
{
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
CFRelease(theUUID);
return (__bridge NSString *)string;
}
EDITAR: 29 de enero de 2014: si apunta a iOS 6 o posterior, ahora puede utilizar el método mucho más simple:
NSString *UUID = [[NSUUID UUID] UUIDString];