From 01088524cbfdcc806b5ac0bbe348cec36ce9919e Mon Sep 17 00:00:00 2001 From: Linus Tufvesson Date: Tue, 19 Jan 2021 15:55:43 +0000 Subject: [PATCH] Update Settings#canDrawOverlays .. to consider if the caller is holding the permission SYSTEM_APPLICATION_OVERLAY. Bug: 171177581 Test: Manually verified using wellbeing app Change-Id: I58907de33015d7441818110e94612ec3d29d07ad --- core/java/android/provider/Settings.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 27ba72b97d7c6..171407c88b5d2 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -3061,7 +3061,9 @@ public final class Settings { */ public static boolean canDrawOverlays(Context context) { return Settings.isCallingPackageAllowedToDrawOverlays(context, Process.myUid(), - context.getOpPackageName(), false); + context.getOpPackageName(), false) || context.checkSelfPermission( + Manifest.permission.SYSTEM_APPLICATION_OVERLAY) + == PackageManager.PERMISSION_GRANTED; } /**