gpt4 book ai didi

android - 如何知道我的应用程序的 Activity 计数?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:19:43 26 4
gpt4 key购买 nike

我的应用程序中有多项 Activity 。请考虑以下情况...

Activity A 调用 Acitivy B。B 调用 C。当用户按下后退键时,C 生成通知并转到 B。现在再次按下后退键,因此将显示 A,再次返回键也将终止 A 并显示通知。 .. 现在,当用户按下通知图标时,Activity C 被加载....直到这部分行为正确....现在用户按下,我使用我的代码启动 Activity A,因为 C 是从 Notification 加载的。

另一种情况Activity A 调用 Acitivy B。B 调用 C。当用户按下返回键时,C 生成通知并转到 B。现在用户按下 HOME KEY。然后在一段时间后选择通知图标,它将显示 Activity C。现在用户按下返回键,默认情况下它显示 Activity B(我想要的)......但是我的代码(从通知加载的 C)......我是显示 Activity A(n 个用户按下,然后显示 Activity B)。

我想知道我自己的应用程序的 Activity 计数,这样我就可以避免执行我的代码来启动 Activity A(如果它不是 1)。

到目前为止,我已经使用以下代码完成了此操作

ActivityManager actM = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> listm = actM.getRunningTasks(1);
int iNumActivity = listm.get(0).numActivities;

但使用此代码需要使用权限 GET_TASKS...我对此感到不满意,因为我没有跟踪任何其他应用程序数据/Activity 计数。

如何解决这个问题?还有其他方法可以实现吗?

编辑如何知道自己应用的 Activity 数?

最佳答案

一种方法是将显示的 Activity 从每个 Activity 中的 onResume() 插入堆栈(单例),并在按下“返回”时将其弹出。这样,只要按下“返回”,您就会知道当前的 Activity 堆栈。由于这将由所有类共享,因此有助于存储值。

关于android - 如何知道我的应用程序的 Activity 计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5429460/

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