Comment puis-je obtenir de l'UUID de mon téléphone Android dans une application?
Je suis à la recherche pour aider à obtenir l'UUID de mon téléphone Android. J'ai cherché sur le net et trouvé une solution potentielle, mais il ne travaille pas dans l'émulateur.
Voici le code:
Class<?> c;
try {
c = Class.forName("android.os.SystemProperties");
Method get = c.getMethod("get", String.class);
serial = (String) get.invoke(c, "ro.serialno");
Log.d("ANDROID UUID",serial);
} catch (Exception e) {
e.printStackTrace();
}
Quelqu'un sait pourquoi il n'est pas de travail, ou d'avoir une meilleure solution?
- Voir ce post stackoverflow.com/questions/4468248/unique-id-of-android-device
- Thaks. je l'ai regardé, il y a donc beaucoup de réponses fpr ur question là-bas, mais qui est à l'optimisme. et j'ai aussi trouvé une solution pour générer unique UUID fondé sur le nom d'hôte, l'adresse MAC, le nom du système d'exploitation et version. mais comment obtenir le intégré UUID.
- Il n'est pas intégré l'UUID. Vous avez Android ID généré au premier démarrage, comme suggéré par Mudassir, ou vous avez IMEI qui est l'IDENTIFIANT unique de votre appareil GSM fournis par le fabricant.
- Merci u Zelimir, que effacé mon Doute. donc, utiliser l'UUID de la génération des algorithmes de je vais en produire un.donc, c'est plus qu'assez de la droite?
- Oui, vous pouvez être sûr qu'elle est unique.
- Oui Zelimir il est unique parce qu'elle est génératrice de base dans le nom d'hôte, l'adresse MAC, le nom du système d'exploitation et version. j'ai eu que de s'ACCROCHER Api.
- J'ai noté que
ro.serialno
etandroid.os.Build.SERIAL
sont identiques sur un Nexus One avec du pain d'épice.
Vous devez vous connecter pour publier un commentaire.
Cela fonctionne pour moi:
EDIT :
Vous avez également besoin d'
android.permission.READ_PHONE_STATE
défini dans le Manifeste. Depuis Android M, vous devez vous demander cette autorisation au moment de l'exécution.Voir cette réponse : https://stackoverflow.com/a/38782876/1339179
Force close
. je n'ai que ce code dans mon MainActiviy! quoi de mal?Comme Dave Webb mentionne, le Développeur Android Blog a un article que couvre ce. Leur solution préférée est de suivre l'application s'installe plutôt que de dispositifs, et qui fonctionne bien pour la plupart des cas d'utilisation. Le blog sera de vous montrer le code nécessaire pour faire ce travail, et je vous recommande de vérifier it out.
Cependant, le blog va sur pour discuter des solutions si vous avez besoin d'un identifiant de l'appareil plutôt que d'une application de l'identificateur d'installation. J'ai parlé avec quelqu'un de chez Google pour obtenir des précisions complémentaires sur quelques éléments dans le cas où vous avez besoin de le faire. Voici ce que j'ai découvert sur les identificateurs de l'instrument qui n'est PAS mentionné dans le blog précité:
Basé sur Google recommandations, j'ai mis en place une classe qui va générer un UUID unique pour chaque appareil à l'aide d'ANDROID_ID comme la semence, le cas échéant, pour retomber sur TelephonyManager.getDeviceId (), si nécessaire, et en cas d'échec, le recours à un unique généré de façon aléatoire UUID qui est conservé à travers application redémarre (mais pas app ré-installations).
Noter que pour les appareils qui ont de repli sur l'ID de l'appareil, l'IDENTIFIANT unique SERA persistent dans l'usine réinitialise. C'est quelque chose d'être conscient de. Si vous devez vous assurer qu'une réinitialisation aux paramètres d'usine réinitialiser votre ID unique, vous pouvez envisager de redescendre directement à l'aléatoire UUID au lieu de l'ID de l'appareil.
Encore une fois, ce code est pour l'ID de périphérique, pas une application d'identification de l'installation. Pour la plupart des situations, une application d'identification de l'installation est probablement ce que vous cherchez. Mais si vous avez besoin d'un ID de périphérique, puis le code suivant va probablement travailler pour vous.
Au lieu d'obtenir le numéro IMEI de TelephonyManager utilisation ANDROID_ID.
Cela fonctionne pour chaque appareil android quelle que soit d'avoir la téléphonie.
Voir Développeur Android article de blog pour l'utilisation de l'UUID de la classe pour obtenir uuid
Ajouter
Méthode
Comme de l'API 26, getDeviceId() est obsolète. Si vous avez besoin pour obtenir le numéro IMEI de l'appareil, utilisez la commande suivante: