Il est important de noter la différence entre un UDID et un UUID.
UDID "identifiant de périphérique unique" est spécifique au matériel. Il ne change jamais pour un périphérique particulier. Pour cette raison, il est devenu un problème de confidentialité et Apple bloque les applications qui tentent d'utiliser cela. Par conséquent, Apple a généré un hachage «ID de périphérique» avec option d'exclusion, en particulier pour l'utilisation de la publicité. Ce nouveau hash d'ID est appelé IFA et est disponible dans iOS 6.0+. UUID "id unique universel" n'est pas spécifique au matériel. C'est un hachage utilisé pour identifier un périphérique; mais pas particulièrement une valeur absolue. Par exemple, PhoneGap génère un UUID basé sur les propriétés du périphérique; C'est ce que vous obtenez quand vous faites device.uuid. Si vous supprimez l'application et réinstallez, vous obtiendrez un nouveau hachage d'ID. UUID n'est pas bloqué par Apple.
Je pense que la meilleure solution dans votre cas serait d'utiliser l'IFA, avec OpenUDID comme une sauvegarde pour iOS < 6.0.
Voici le code que nous utilisons. Si IFA n'est pas disponible, obtenez OpenUDID. [[Vous devez installer OpenUDID, lisez plus à ce sujet ici, https://github.com/ylechelle/OpenUDID]]]
NSString* uuid = nil;
if ([[UIDevice currentDevice] respondsToSelector:@selector(identifierForVendor)]) {
// IOS 6 new Unique Identifier implementation, IFA
uuid = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
} else {
// Before iOS6 (or if IFA disabled) you shoud use a custom implementation for uuid
// Here I use OpenUDID (you have to import it into your project)
// https://github.com/ylechelle/OpenUDID
NSString* openUDID = [OpenUDID value];
uuid = [OpenUDID value];
}
Merci beaucoup! – Eonil
avez-vous par hasard un lien vers cette information? –