当应用程序处于后台且屏幕被锁定时,我无法启动活动,没有异常或警告,只是不调用 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
这就是我无法开始活动的原因吗?另外,我该如何解决这个问题,我应该禁用键盘保护还是其他什么?
这是 MIUI 上的特殊权限,必须为应用程序启用。
您可以在以下位置找到它:
- Settings
- 管理应用程序
- YOUR APP
- 其他权限
- 在锁定屏幕上显示
用户必须手动启用此功能。据我所知,您能做的最好的事情就是通过启动意图(并可能在此之前显示一些解释文本)来直接引导用户进入此设置菜单。
意图看起来像这样
startActivity(new Intent("miui.intent.action.APP_PERM_EDITOR").putExtra("extra_pkgname", getPackageName()))
确保尝试捕获它,因为如果活动无法启动,它可能会抛出异常(例如,设备实际上没有运行 MIUI 或者意图在特定设备/版本上无效)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)