2010-07-28 3 views
11

Possible en double:
Is there a unique Android device ID?Comment obtenir le android_id d'un périphérique?

Dans la documentation de licence les développeurs Android mentionnent un moyen facile à plus ou moins identifier en toute sécurité un appareil Android. Ils utilisent android.Settings.Secure.ANDROID_ID.

Ils disent interroger les paramètres du système pour cela. Mais ils ne l'expliquent pas davantage.

Comment puis-je obtenir le android_id et ai-je besoin d'autorisations spéciales pour le faire?

Répondre

6

Tout est dans le Javadoc, lié à cette question que vous avez édité 30 minutes avant celle-ci! :)
Is there a unique Android device ID?

La partie "sécurisée" signifie simplement que les applications ne peuvent pas écrire, seulement lire. Je semble rappeler que cet ID d'appareil n'est pas toujours présent; Il est peuplé par le marché au besoin, peut-être.

+0

Merci J'ai essayé le code dans la question et cela n'a pas fonctionné, mais maintenant je me suis rendu c'était une erreur de ma part et ça a marché. – Janusz

+0

Je voulais corroborer le fait que l'ID n'était pas toujours présent. Quand j'ai testé sur des émulateurs, nous avons eu des problèmes avec cela. Je ne me souviens pas si l'identifiant n'a jamais été présent ou juste occasionnellement manquant, mais je me souviens que ce n'était pas toujours le cas sur les émulateurs – Hamy

17
adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db "SELECT value FROM secure WHERE name='android_id'" 

L'id android est modifiable avec un téléphone enraciné ... Insérer un id android avec:

adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db "UPDATE secure SET value='IDHERE' WHERE name='android_id'" 
+5

Cela semble ne plus marcher sur les androïdes récents. Cela a fonctionné pour moi à la place: 'Les paramètres du shell adb sont sécurisés android_id' – kralyk

Questions connexes