UDID ou IMEI- qui est le meilleur?

Lors du développement d’une application, je dois identifier de manière unique les utilisateurs du téléphone. J’espérais avoir des conseils pour savoir s’il est préférable d’utiliser un UDID ou un IMEI de téléphone. Y at-il des avantages / inconvénients à utiliser l’un ou l’autre. Tous les commentaires seraient grandement appréciés

Avantages de ANDROID_ID:

  1. Settings.Secure.ANDROID_ID. Il s’agit d’une quantité 64 bits générée et stockée lors du premier démarrage du périphérique ( ANDROID_ID n’est pas unique pour Android 2.2 et 4.2).

Inconvénients de ANDROID_ID:

  1. ANDROID_ID peut changer lors de la réinitialisation des ANDROID_ID d’usine.

  2. ANDROID_ID peut être null

  3. Il peut être facilement modifié sur un téléphone enraciné

  4. Plusieurs périphériques de plusieurs fabricants sont affectés par le bogue ANDROID_ID la ANDROID_ID 2.2 et tous ont le même ANDROID_ID , à savoir 9774d56d682e549c . Quel est le même identifiant de périphérique signalé par l’émulateur?

    Docs: http://android-developers.blogspot.in/2011/03/identifying-app-installations.html

  5. ANDROID_ID plus de manière unique un périphérique: https://stackoverflow.com/a/13465373/150016

Avantages de IMEI

  1. Le numéro IMEI est toujours unique.

Les inconvénients de l’IMEI

  1. De nombreux appareils n’ont pas de numéro IMEI, c.-à-d. Samsung Galaxy Tab 2

Liens importants

Si vous souhaitez identifier un périphérique, vous devez essayer UUID

http://developer.android.com/reference/java/util/UUID.html

ou peut-être essayer votre propre identifiant. J’ai utilisé un MD5 sur les identifiants et l’adresse MAC, combinés aux périphériques System-Nano-Time. Ce serait vraiment une grande coïncidence si deux appareils ont le même “identifiant unique”.