gpt4 book ai didi

java - 如何获取 Android L 的运行包名称

转载 作者:太空宇宙 更新时间:2023-11-03 10:44:30 24 4
gpt4 key购买 nike

所以我们都知道 ActivityManager 上的 getRecentTasks() 和 getRunningTasks() 现在已被弃用,并且将在 Android L 和更高版本的设备上返回减少的结果集。

Alternative to getRunningTasks in Android L

https://code.google.com/p/android-developer-preview/issues/detail?id=29

但是,我正在尝试找到一种解决方案,让我的 App Locker 应用程序在 Android L 上保持 Activity 状态。我需要顶级 Activity 的包名称,以便在用户打开/启动锁定的应用程序时显示锁定屏幕。

它与这个应用非常相似:https://play.google.com/store/apps/details?id=com.domobile.applock&hl=en

目前我正在使用这段代码:

  ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> RunningTask = mActivityManager
.getRunningTasks(1);
ActivityManager.RunningTaskInfo ar = RunningTask.get(0);
String activityOnTop = ar.topActivity.getPackageName();

但它在 Android L 中不起作用,所以我不确定到底该怎么做...

如何在 Android L 中实现这样的功能?

最佳答案

不幸的是,Android 5.0 中没有等效项:无法获取最顶层的 Activity,也无法在实时启动新应用程序/Activity 时获得任何回调。

关于java - 如何获取 Android L 的运行包名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26491708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com