当应用程序在后台并且屏幕被锁定时,我无法启动活动,没有异常或警告,仅未调用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的特殊权限。

你可以在找到它


设定值
管理应用
您的APP
其他权限
在锁定屏幕上显示


用户必须手动启用它。据我所知,您所能做的最好的就是通过启动一个意图(并可能在此之前显示一些解释器文本)直接将用户引导至此设置菜单。

目的看起来像这样

startActivity(new Intent("miui.intent.action.APP_PERM_EDITOR").putExtra("extra_pkgname", getPackageName()))


确保尝试捕获它,因为如果无法启动活动,它可能会引发异常(例如,设备实际上未运行MIUI或该意图在特定设备/版本上无效)

07-26 07:20