叠加权限提示不可见

时间:2019-05-02 14:58:37

标签: android android-permissions android-9.0-pie

   private fun requestOverlayPermission() {
        Log.e("xxx", "inside requestOverlayPermission")
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            Log.e("xxx", "inside android version check")
            if (!Settings.canDrawOverlays(activity)) {
                Log.e("xxx", "inside canDrawOverlay check")
                val intent = Intent(
                    Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
                    Uri.parse("package:" + activity?.packageName)
                )
                Log.e("xxx", "about to call requestOverlayCode")
                activity?.startActivityForResult(intent, REQUEST_OVERLAY_PERMISSION_CODE)
            } else {
                Log.e("xxx", "inside inner else block")
                activity?.startService(
                    Intent(
                        activity,
                        LockScreenService::class.java
                    )
                )
                lockHomeButton()
            }
        } else {
            Log.e("xxx", "inside outer else block")
            activity?.startService(
                Intent(
                    activity,
                    LockScreenService::class.java
                )
            )
            lockHomeButton()
        }
    }

我正在使用一个应用程序,该应用程序在首次安装时向用户显示覆盖权限提示。但是,该应用程序在运行Android Pie的单个Google Pixel 3XL设备上崩溃。我没有对该设备的物理访问权,因此无法对其进行调试。该应用程序从不显示“覆盖”提示。

但是,该应用程序在Pixel 3 XL仿真器上运行良好。

我的清单:

<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

我不知道有一些奇怪的怪癖吗?为什么会发生这种情况的一些见解会很棒。

谢谢。

0 个答案:

没有答案