【问题标题】:Get notified when a process end or is killed on Android当进程结束或在 Android 上被终止时收到通知
【发布时间】:2011-10-26 17:02:05
【问题描述】:

我一直在挖掘网络,以寻找针对这个具体问题的好的、android 的解决方案,但还没有找到,所以我在这里,在 StackOverflow 上发布我的第一个问题。

为了详细说明我的问题,我有一个成熟的辅助服务,其他一些进程绑定到该服务。我的服务将为连接到它的每个进程分配一些资源,我想让这个语句加粗,资源分配是为进程进行的,我进行了某种会话跟踪,其中 getCallingPid() 和 getCallingUid() 播放会话标识符的作用。

所以这里的问题是,如果绑定到我们的应用程序由于某种原因消失了,Android 永远不会告诉我们,因此分配给该被破坏进程的系统资源将被我们的服务占用而浪费掉。

我发现一种可行的解决方案是轮询ActivityManager.getRunningAppProcesses 并计算当前快照和以前快照之间的集合差异,但这种方法看起来很脏。

谁能提出一些更好的方法来做到这一点?我将不胜感激!

谢谢,

乔治

【问题讨论】:

    标签: android process notifications kill


    【解决方案1】:

    据我所知,Android 不会告诉您进程何时被终止。

    我怀疑唯一的方法是每隔 x 秒或每分钟获取一个正在运行的应用程序列表,并以这种方式跟踪应用程序。我认为这也是您在问题中已经提出的建议。

    这并不漂亮,但它可能是唯一的方法之一。

    【讨论】:

    • 谢谢,只是希望有人在以这种方式实施之前确认一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-06
    • 2011-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多