Autorisation révoquée android.permission.CALL_PHONE
Je suis en train de l'appeler par programme à un nombre avec le code suivant:
String number = ("tel:" + numTxt.getText());
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse(number));
startActivity(intent);
J'ai mis l'autorisation dans le Manifeste:
<uses-permission android:name="android.permission.CALL_PHONE"/>
Je suis travailler avec l'appareil de test et de débogage, il est Nexus 5 avec Android M, mon compileSdkVersion est de 23. Je suis la suite de l'Exception de Sécurité:
error: Permission Denial: starting Intent { act=android.intent.action.CALL dat=tel:xxxxxxxxxx cmp=com.android.server.telecom/.components.UserCallActivity } from ProcessRecord{cbbd7c1 5228:com.dialerTest.DialerApp/u0a96} (pid=5228, uid=10096) with revoked permission android.permission.CALL_PHONE
J'ai cherché sur le web et cette communauté de semblables Q/A et ne pouvait pas trouver la réponse. Toute aide sera appréciée.
source d'informationauteur Evgeniy Mishustin
Vous devez vous connecter pour publier un commentaire.
Dans android 6.0 Api (lvl 23) nous avons quelque chose qui s'appelle "Runtime" Autorisations". Vous devez lire à ce sujet.
Vous pouvez trouver de la documentation ici.
Autorisation CALL_PHONE appartiennent à autorisation dangereuse du groupe.
Donc, si vos applications cible SDK est 23 ou plus et que votre appareil est en cours d'exécution sur Android 6.0 ou supérieur, vous devez demander pour CALL_PHONE autorisation, tandis que l'application est en cours d'exécution.
Exemple :
Lorsque votre application demande des autorisations, le système affiche une boîte de dialogue à l'utilisateur. Lorsque l'utilisateur répond, le système appelle votre application onRequestPermissionsResult (), en lui passant la réponse de l'utilisateur.