2011-10-26 10 views
1

私は、この具体的な問題のために素晴らしいandroidishソリューションを見つけるためにウェブを掘り下げましたが、見つからなかったので、ここで私の最初の質問をStackOverflow 。プロセスが終了したとき、またはAndroid上で殺されたときに通知を受ける

私の問題を詳述するために、私は本格的なaidlサービスを持っています。これには他のプロセスがバインドされています。私のサービスは、それに接続するプロセスごとにいくつかのリソースを割り当てます。私はこのステートメントを太字にしたい、リソースの割り当てはプロセスのために作られています。セッショントラッキングを行います。getCallingPid()とgetCallingUidセッション識別子の役割

ここに問題があります。私たちに縛られたアプリケーションが何らかの理由で去った場合、Androidは決して私たちに教えてくれないので、その破壊されたプロセスに割り当てられたシステムリソースは私たちのサービスによって保持されることによって無駄になります。

私はやや実現可能な1つの解決策は、ActivityManager.getRunningAppProcessesをポーリングして、現在と前のスナップショットの間の設定差を計算することですが、この方法は実際には汚れています。

誰かがこれを行うためのよりよい方法を提案できますか?私は本当に感謝しています!プロセスが殺されたときに

おかげで、

ジョルジ

答えて

1

は、私の知る限り承知しているとして、Androidはあなたを教えてくれません。

唯一の方法は、実行中のアプリケーションのリストをx秒または分ごとに取得し、そのようにアプリケーションを追跡することだと思います。私はこれがあなたがすでに質問に示唆しているものだと思います。

これはかなりありませんが、それを行う唯一の方法の1つです。

+0

ありがとう、ちょうど誰かがそれをそのような方法で実装する前に確認することを望みました。 – Giorgi

関連する問題