web-dev-qa-db-fra.com

Comment identifier de manière unique un appareil iOS au lieu d'utiliser UUID et UDID

Dans mon application iOS, je dois restreindre l'utilisateur à utiliser l'application iOS par appareil. Pour ce faire, j'ai trouvé une solution que nous pouvons utiliser la fonction UUID (Universally Unique Identifier) ou UDID (Unique Device Identifier). Mais selon cette réponse je ne peux pas utiliser UUID, car si l'application est supprimée ou réinstallée UUID a changé et je ne veux pas de ça. Aussi Apple rejette les applications si l'application utilise UDID.

Existe-t-il un moyen d'identifier de manière unique le périphérique iOS.

11
Kirti Nikam

Apple a supprimé l'approche des UDID et rejettera les applications qui les utilisent pour l'identification unique des appareils. Source: TNW

Ce que vous recherchez est ID fournisseur

14
Vijay Tholpadi

J'utilise cette bibliothèque pour mes projets, et cela fonctionne comme un charme, veuillez essayer:

https://github.com/blackpixel/BPXLUUIDHandler

facile à utiliser :

Importer BPXLUUIDHandler.h Récupérer l'UUID avec

[BPXLUUIDHandler UUID]

C'est tout...

Voici quelques informations de la page github du projet:

À partir d'iOS 5, Apple a déprécié l'API d'identification unique de l'appareil et n'a pas fourni de remplacement Obj-C convivial, recommandant plutôt CFUUIDCreate et NSUserDefaults.

CFUUIDCreate n'est pas très compliqué et NSUserDefaults non plus, mais cette solution échoue de plusieurs manières:

  • Ce n'est pas un appel rapide pour obtenir l'UUID; vous devez écrire votre propre emballage pour le rendre convivial
  • Il ne persiste pas; la suppression de l'application efface l'UUID (peut être persistée si elle est stockée dans le trousseau)
  • Il n'y a aucun moyen de le partager entre les applications
0
mgyky