Manifest:Settings.canDrawOverlays (contexte) retourne faux sur Android Oreo
<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
<uses-permission android:name="android.permission.ACTION_MANAGE_OVERLAY_PERMISSION" />
code activity.onCreate():
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && BuildConfig.DEBUG) {
if (!Settings.canDrawOverlays(this)) {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
}
}
Problème: Settings.canDrawOverlays (ce) retourne false même donc la permission a déjà été accordée. N'a pas eu lieu avant la mise à jour de Pixel à Oreo.
version Android: 8.0.0
J'ai essayé de mettre à jour des outils de construction: à 26.0.1 et cible et compileSdk à 26. Il a aidé lors du premier lancement: après avoir désactivé sur elle retourne vrai, mais la prochaine fois que je lance une application, elle retourne à nouveau false.
J'ai également rencontré ce problème - s'il vous plaît laissez-moi savoir si vous trouvez une solution – Eshaan
Voir ma solution à la question à https://stackoverflow.com/questions/46173460/why-in-android-o-method- paramètres-candrawoverlays-retourne-faux-quand-utilisateur-a/48127195 # 48127195 – headuck