MIUI 权限被拒绝活动 KeyguardLocked

Dan*_*l.B 7 android keyguard android-activity miui

当应用程序在后台并且屏幕被锁定时,我无法启动活动,没有异常或警告,只是没有调用 onCreate()。我一直在努力解决这个问题,我想我终于找到了它的根源。日志中有一行:

D/com.android.server.am.ExtraActivityManagerService: MIUILOG- Permission Denied Activity KeyguardLocked: Intent { flg=0x14010000 cmp=com.trueconf.videochat/com.trueconf.gui.activities.Call (has extras) } pkg : com.trueconf.videochat uid : 10634
Run Code Online (Sandbox Code Playgroud)

这就是我无法开始活动的原因吗?另外,我该如何解决这个问题,我应该禁用键盘锁还是什么?

drk*_*drk 10

这是 MIUI 上的特殊权限,必须为应用程序启用。

你可以在

  1. 设置
  2. 管理应用程序
  3. 您的应用程序
  4. 其他权限
  5. 在锁定屏幕上显示

用户必须手动启用此功能。据我所知,你能做的最好的事情就是通过启动一个意图(并且可能在此之前显示一些解释文本)来直接引导用户进入这个设置菜单。

意图看起来像这样

startActivity(new Intent("miui.intent.action.APP_PERM_EDITOR").putExtra("extra_pkgname", getPackageName()))
Run Code Online (Sandbox Code Playgroud)

确保尝试捕获它,因为如果 Activity 无法启动,它可能会抛出异常(例如,设备实际上没有运行 MIUI 或者意图在特定设备/版本上以某种方式无效)

  • 谢谢,但是如何检查此权限是否启用? (4认同)