8 votes

Différence entre Android ID et device ID

Quelle est la différence entre Android ID et device ID ?

Voici comment je les obtiens :

ID Android :

String androidID = Settings.Secure.getString(MainActivity.this.getContentResolver(),
            Settings.Secure.ANDROID_ID);

ID du dispositif :

String deviceID = ((TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE))
                    .getDeviceId()

J'ai besoin d'identifier de manière unique mon appareil Android. En utilisant deviceID a besoin de l'autorisation de "passer et gérer des appels téléphoniques". En utilisant androidID ne le fait pas. Par conséquent, je vais avec androidID car je n'ai pas besoin de privilèges de gestion des appels.

  1. Quelle est la différence exacte entre les deux ? S'il n'y en a aucune, pourquoi y a-t-il deux identifiants ?

  2. Les deux identifiants seront-ils réinitialisés si je réinitialise mon appareil ?

  3. Je sais. deviceID fonctionne pour toutes les versions d'Android. Will androidID fonctionne pour toutes les versions ?

14voto

Milner Points 533

Bien que votre question concerne un problème de développement (ce qui est hors sujet ici), la réponse est pertinente pour les utilisateurs également, je vais donc y répondre :

  • DeviceID : Il s'agit du numéro de série de l'appareil, qui devrait persister même après une réinitialisation d'usine.
  • AndroidID : Il sera défini au premier démarrage (soit avec un appareil neuf, soit après une réinitialisation d'usine). Comme impliqué, il fait pas survivre à un Réinitialisation en usine
  • Il y a un deuxième " Android_ID "qui est généré et utilisé par l Cadre des services Google (GSF), et donc souvent référencée comme " ID GSF ". Se comporte fondamentalement comme l'AndroidID mentionné précédemment (par exemple, il ne survit pas à un Réinitialisation en usine ), et coexiste avec elle.
  • En outre, il y a le GAID ( ID de la publicité Google ), qui peut être réinitialisée par l'utilisateur via la fonction Paramètres Google app.

En "fonctionnement normal" (c'est-à-dire tant que vous n'avez pas réinitialisé votre appareil en usine ou réinitialisé le GAID), tous ces identifiants peuvent être utilisés pour identifier l'appareil. Lorsque vous utilisez plusieurs utilisateurs (via des profils d'utilisateurs) sur un appareil, tous les identifiants, à l'exception du DeviceID, permettent d'identifier l'utilisateur (profil).

À ma connaissance, tous ces identifiants sont disponibles sur toutes les versions d'Android (du moins sur celles qui sont actuellement pertinentes, c'est-à-dire GB/2.3 et plus). Les deux derniers ne sont évidemment disponibles que si les GApps sont installées - donc sur les appareils utilisant une ROM personnalisée sans GApps, ils peuvent ne pas exister.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X