Android READ_PHONE_STATE exécution de l'autorisation demande de faire et de gérer les appels téléphoniques
Dans l'application que je veux obtenir unique id de téléphone via TelephonyManager.getDeviceId()
. Pour utiliser cela, j'ai besoin de cette autorisation READ_PHONE_STATE
. Problème avec l'exécution de l'autorisation sur Android 6. En exécution de l'autorisation popup dialogue, il demande l'octroi d'une autorisation "de faire et De gérer les appels téléphoniques" qui peuvent effrayant le nombre d'utilisateurs de l'app. Ce qui peut être fait? Ou puis-je obtenir tout autre identifiant unique de l'appareil sans l'aide de ces grands permission?
TelephonyManager TM = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String deviceId = TM.getDeviceId();
vous pouvez définir des "targetSdkVersion 22", il marche dans android 6.et il ne sera pas montrer popup pour demander d'exécution des autorisations.il sera automatiquement accorder l'accès. 🙂
Pourquoi voulez-vous utiliser
vous pouvez consulter ce répondre pour trouver des id unique.
Je suis confronté au même problème dans mon application. Dans mon application, je dois lire IMEI.
Pourquoi voulez-vous utiliser
TelephonyManager.getDeviceId()
? Il y a beaucoup mieux identifiants sur Android dans la plupart des cas.vous pouvez consulter ce répondre pour trouver des id unique.
Je suis confronté au même problème dans mon application. Dans mon application, je dois lire IMEI.
OriginalL'auteur Rafael | 2016-03-10
Vous devez vous connecter pour publier un commentaire.
Je suis en utilisant cela comme un identifiant unique de l'appareil dans mon application et je n'ai pas besoin à tout moment de l'exécution de l'autorisation.
ou Vous pouvez utiliser cette
READ_PHONE_STATE
conduit à un dialogue de lecture de texte "de faire et De gérer les appels téléphoniques"depuis l'utilisation de READ_PHONE_STATE, vous pouvez gérer les appels entrants et sortants et beaucoup d'autres choses, de sorte qu'il disent de faire et de gérer les appels téléphoniques. mais la question est de savoir comment obtenir l'identifiant unique de l'appareil sans l'aide de READ_PHONE_STATE autorisation. il a demandé une autre façon.
De cette façon, l'utilisateur peut supprimer les android_id et d'en générer un nouveau. Ensuite, il pourrait abus que pour le Promo-Code abusage. La seule façon d'obtenir un Id qui ne peut pas être supprimer est la façon dont Rafael est-ce que. Et pour cela, il a besoin de la permission et le problème est la mauvaise boîte de Dialogue à partir de Android à cet effet. Bien sûr, les gens vont diminuer cette permission, parce qu'ils ont peur d'être appelé. Donc ce n'est pas la solution, mais rend plutôt l'abusage possible.
OriginalL'auteur Hammad Tariq
Demandant une autorisation à partir d'un certain groupe d'autorisation ouvre une boîte de dialogue qui accorde chaque permission du dit groupe (à condition d'avoir également demandé dans votre manifeste).
Exemple: Demander
READ_PHONE_STATE
etCALL_PHONE
dans le manifeste. Demande justeREAD_PHONE_STATE
au moment de l'exécution. Obtenez présenté avec la permission de dialogue. Vérifiez que vous avez obtenu les deux autorisations.Liste dangereux, les autorisations et les groupes d'autorisations: https://developer.android.com/guide/topics/permissions/requesting.html
Ce comportement n'a pas changé depuis Android 6, mais peut être modifié à l'avenir.
OriginalL'auteur Eugen Pechanec