Diferencias entre UDID y UUID

Algunas personas dicen UDID (Unique Device IDentifier) y algunos dicen UUID (Universally Unique IDentifier) . ¿Son lo mismo o no? Cuáles son las diferencias entre ellos?

UUID (Universally Unique IDentifier) Se aplica por aplicación. identifica una aplicación en un dispositivo. Siempre que el usuario no elimine completamente la aplicación, este identificador persistirá entre los lanzamientos de la aplicación, y al menos le permitirá identificar al mismo usuario que utiliza una aplicación en particular en un dispositivo. Desafortunadamente, si el usuario borra por completo y luego vuelve a instalar la aplicación, la identificación cambiará.

UDID (Unique Device Identifier) Una secuencia de 40 caracteres hexadecimales que identifican de manera única un dispositivo ios. Este valor puede recuperarse a través de iTunes o encontrarse usando UIDevice -uniqueIdentifier. Derivado de detalles de hardware como la dirección MAC.

Apple aparentemente está comenzando a eliminar el acceso al UDID (IDentificador único del dispositivo) en iOS5. En cualquier caso, lo mejor que puede hacer ahora con fines de identificación es usar un UUID (Universally Unique IDentifier). Esto tiene que ser por aplicación. Es decir, no hay forma de identificar el dispositivo por más tiempo, pero puede identificar una aplicación en un dispositivo. Siempre que el usuario no elimine completamente la aplicación, este identificador persistirá entre los lanzamientos de la aplicación, y al menos le permitirá identificar al mismo usuario que utiliza una aplicación en particular en un dispositivo. Desafortunadamente, si el usuario borra por completo y luego vuelve a instalar la aplicación, la identificación cambiará, pero esto es lo mejor que se puede hacer en el futuro.

Será mejor que revises esto: http://nshipster.com/uuid-udid-unique-identifier/

UUID (Universally Unique Identifier): secuencia de 128 bits que garantiza la exclusividad en el espacio y el tiempo, definida por RFC 4122 .

UDID (identificador de dispositivo único): una secuencia de 40 caracteres hexadecimales que identifican de forma única un dispositivo iOS (el número de seguridad social del dispositivo, si lo desea). Este valor puede recuperarse a través de iTunes o encontrarse usando UIDevice -uniqueIdentifier. Derivado de detalles de hardware como la dirección MAC.

Desde iOS 5, Apple ha dejado de utilizar el identificador único de UIDevice, lo que significa que la forma tradicional de obtener la identificación única de cada dispositivo iOS no funcionará ahora, es decir. [[UIDevice currentDevice] uniqueIdentifier] falla de iOS 5 y más.

Entonces, para la alternativa al UUID, podemos usar la clase CFUUID de Apple para crear una identificación única para el dispositivo. Pero, realmente debemos tener en cuenta que esta clase inbuild creará números aleatorios para que devuelvan identificaciones diferentes en cada llamada. No use NSUserDefaults para almacenarlo, la mejor manera es usar Keychain.

Por lo tanto, aquí le doy la mejor manera de usarlo para usarlo como una clave única para su dispositivo.

 - (NSString *)createNewUUID { CFUUIDRef theUUID = CFUUIDCreate(NULL); CFStringRef string = CFUUIDCreateString(NULL, theUUID); CFRelease(theUUID); return [(NSString *)string autorelease]; } 

TU HICISTE:

http://whatsmyudid.com/

enter image description here

UDID, que es Identificador de Dispositivo Único, aplicado en iTunes, gestiona dispositivos en tu certificado de desarrollo Apple. se puede obtener mediante el siguiente código, en iOS5 SDK:

 [UIDevice currentDevice] uniqueIdentifier]; 

define es:

 @property(nonatomic,readonly,retain) NSString *uniqueIdentifier __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_5_0); // a string unique to each device based on various hardware info. 

UUID, que es identificador único universal, un estándar de identificación utilizado en la construcción de software, estandarizado por Open Software Foundation (OSF) como parte del Entorno de Computación Distribuida (DCE) ( wiki ).

Puedes obtener UUID siguiendo el código:

 -(NSString*) uuid { CFUUIDRef puuid = CFUUIDCreate( nil ); CFStringRef uuidString = CFUUIDCreateString( nil, puuid ); NSString * result = (NSString *)CFStringCreateCopy( NULL, uuidString); CFRelease(puuid); CFRelease(uuidString); return [result autorelease]; } 

Pero, en el dispositivo iOS7, el método anterior devolverá el mismo valor para el dispositivo de diferencia.

Hay muchos métodos para buscar identificadores únicos en el enlace