Je sais que vous pouvez trouver l'adresse IMEI et MAC et d'autres en allant sur Settings -> About phone -> Status
. Vous pouvez également trouver IMEI en tapant *#06#
sur le clavier. Existe-t-il un moyen d'obtenir l'ANDROID_ID sur le téléphone lui-même, plutôt que via ce morceau de code?
Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID);
imei
android-id
Kalinka
la source
la source
Réponses:
Vous pouvez le faire via
adb
. Ne nécessite pas de root, pour autant que je sache (testé sur un Galaxy Nexus exécutant 4.2.1 construit à partir d'une source AOSP):la source
settings get secure android_id
à partiradb shell
est le plus simple, je trouve - pas de sortie étrangère et ne nécessite pas la racine. (À partir d'un terminal standard sur l'appareil, le root est requis.)la source
android_sdk/platform-tools/
avec cmd ou un autre terminal. 2.adb devices
pour vérifier si votre mobile peut être trouvé via USB. 3adb shell
.. 4. Exécutez la commande dans cette réponse.Comme la variante eldarerathis n'a pas fonctionné pour moi et que je ne voulais pas installer une application juste pour cela, j'ai trouvé une manière différente. Seul inconvénient possible: il nécessite un root.
Le
android_id
se trouve dans la troisième colonne ici (anonymisé dans l'exemple).ÉDITER:
Notez que ce n'est PAS celui
android_id
utilisé par les applications Google. Google semble avoir décidé d'une certaine confusion ici. Pour Play Services , il y a un fichier séparéandroid_id
stocké par GTalk , comme le souligne un article de blog (voir également cette réponse de HassleFixes , qui est l'auteur de StripSearch , et l'a heureusement souligné dans les commentaires):*#*#8255#*#*
android-
android_id
utilisé par les services GoogleJ'ai vérifié que: le
android_id
récupéré de cette façon fonctionne correctement sur un appareil sans Google-Apps installé (utilisé avec le BlankStore fourni par le projet NOGAPPS ).la source
La réponse ci - dessus a
$ content query --uri content://settings/secure --projection value --where "name='android_id'"
en elleSi vous exécutez cela à partir du shell, vous devrez échapper les guillemets autour de android_id, sinon ils seront interprétés et l'instruction SQL ne les aura pas, ce qui entraînera une colonne inconnue.
Ma commande complète de bash regarde la ligne ...
$ adb shell content query --uri content://settings/secure --projection value --where "name=\'android_id\'"
^ Pas assez de réputation pour commenter la réponse qui l'a suggérée ci-dessus
la source
adb shell
, puis a exécuté une autre commande dans ce shell. Cela fonctionne bien sans échapper aux guillemets. Votre réponse exécute une seule commande sur la machine principale; pour cela, vous devez échapper aux citations.