Sfoglia il codice sorgente

[fix]键盘插件,跳转去悬浮窗权限,兼容安卓11以下版本

hezihao 7 mesi fa
parent
commit
b3679d9074

+ 12 - 4
plugins/keyboard_android/android/src/main/kotlin/com/atmob/keyboard_android/util/FloatingWindowUtil.kt

@@ -27,10 +27,18 @@ class FloatingWindowUtil {
          * 跳转到悬浮窗的权限设置页面
          */
         fun jumpFloatingWindowSetting(context: Context) {
-            val intent = Intent(
-                Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
-                "package:${context.packageName}".toUri()
-            )
+            // 安卓11以下,跳应用详情
+            val intent = if (Build.VERSION.SDK_INT < 30) {
+                Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS).apply {
+                    data = "package:${context.packageName}".toUri()
+                }
+            } else {
+                // 安卓11以上,可以直接跳去悬浮窗权限列表页
+                Intent(
+                    Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
+                    "package:${context.packageName}".toUri()
+                )
+            }
             // 重要:在非 Activity 里启动 Activity 需要添加 FLAG_ACTIVITY_NEW_TASK
             intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
             context.startActivity(intent)