From 2286c123b7c405a280648ea119c881fd2f97377e Mon Sep 17 00:00:00 2001 From: David Vacca Date: Wed, 27 Sep 2023 13:10:31 -0700 Subject: [PATCH] Remove support for Android API < 23 in DebugOverlayController (#39664) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/39664 Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class DebugOverlayController changelog: [Android][Breaking] Remove support for Android API < 23 in DebugOverlayController Reviewed By: NickGerleman Differential Revision: D48545520 fbshipit-source-id: 3a1140a46310c617610ff1e0c40b02427357087a --- .../devsupport/DebugOverlayController.java | 42 +++++++------------ 1 file changed, 15 insertions(+), 27 deletions(-) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java index a70d44a9b70..6341a5a8ee5 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java @@ -7,14 +7,12 @@ package com.facebook.react.devsupport; -import android.Manifest; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.graphics.PixelFormat; import android.net.Uri; -import android.os.Build; import android.provider.Settings; import android.view.WindowManager; import android.widget.FrameLayout; @@ -31,36 +29,26 @@ import com.facebook.react.common.ReactConstants; /* package */ class DebugOverlayController { public static void requestPermission(Context context) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - // Get permission to show debug overlay in dev builds. - if (!Settings.canDrawOverlays(context)) { - Intent intent = - new Intent( - Settings.ACTION_MANAGE_OVERLAY_PERMISSION, - Uri.parse("package:" + context.getPackageName())); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - FLog.w( - ReactConstants.TAG, - "Overlay permissions needs to be granted in order for react native apps to run in dev mode"); - if (canHandleIntent(context, intent)) { - context.startActivity(intent); - } + // Get permission to show debug overlay in dev builds. + if (!Settings.canDrawOverlays(context)) { + Intent intent = + new Intent( + Settings.ACTION_MANAGE_OVERLAY_PERMISSION, + Uri.parse("package:" + context.getPackageName())); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + FLog.w( + ReactConstants.TAG, + "Overlay permissions needs to be granted in order for react native apps to run in dev mode"); + if (canHandleIntent(context, intent)) { + context.startActivity(intent); } } } private static boolean permissionCheck(Context context) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - // Get permission to show debug overlay in dev builds. - if (!Settings.canDrawOverlays(context)) { - // overlay permission not yet granted - return false; - } else { - return true; - } - } - // on pre-M devices permission needs to be specified in manifest - return hasPermission(context, Manifest.permission.SYSTEM_ALERT_WINDOW); + // Get permission to show debug overlay in dev builds. + // overlay permission not yet granted + return Settings.canDrawOverlays(context); } private static boolean hasPermission(Context context, String permission) {