我有一个在后台运行的应用,并在手机上发生特定事件时启动活动。我发现在Android 5.0中,当用户使用另一个应用程序打开屏幕固定时,将完全忽略startActivity(intent)调用。我的应用程序不知道活动没有启动,因此用户在手动重新打开我的应用程序之前将没有其他机会看到该活动。
是否有任何类型的事件我可以注册以在屏幕固定关闭时收到通知,因此我可以重新尝试开始我的活动?
答案 0 :(得分:2)
这是ActivityManager类中的方法,它告诉屏幕固定时是否锁定当前任务的状态:
!mActivityManager.isInLockTaskMode()
有关详细信息,请查看此链接: http://developer.android.com/reference/android/app/ActivityManager.html#isInLockTaskMode%28%29
答案 1 :(得分:1)
您的应用必须是设备管理员(具有用户授予的管理权限)。完成后,您可以实现此回调:
AdminReceiver.onLockTaskModeExiting(Context context, Intent intent)
在固定模式停止时执行某些操作。
要了解如何将您的应用设为管理员应用:您可以查看我之前的回答here