2012-01-24 15 views
0

Android搭載端末で現在実行中のアプリを確認したいアプリが実際に実行されているかどうかを確認するにはどうすればよいですか?

私はgetRunningAppProcesses()があり、重要度フィールドをチェックすることができますが、まだ良い結果を得ることはできないことを知っています。

返されるプロセスは、すべてのプロセスです(非アクティブなプロセスも含めて)。重要なフィールドが< = IMPORTANCE_VISIBLEであるかどうかを確認しています。問題は、このチェックですべてのアクティブなアプリが返されるわけではないということです。

私はPowerAmpを例に挙げることができます。 PowerAmpがフォアグラウンドにある場合、このチェックとともに返されます。しかし、それがバックグラウンドでのみ再生されている場合、それは戻っていません。

アプリが実際にバックグラウンドでアクティブになっているかどうかを確認するにはどうすればよいですか?

私は、それがうまくいくので、それができることを知っています。

ありがとうございました。

答えて

0

アプリがバックグラウンドで実行されると、Serviceになります。アプリケーションという用語は、onCreate、onResumeなどの通常のサイクルを経るものにのみ適用されます。バックグラウンドで音楽を再生することは、サービスの管轄下にあります。同様に、サービスも確認する必要があります。

あなたが話していることを扱うもので、このリンクをご覧ください。それが助けにならないなら、ああ、私は試しました!

How to check if a service is running on Android?

+0

いいえ。これは間違っています。 'サービス 'はコンポーネントの一種です。 'Application'は' Service'にはなりません。 – kabuko

+0

申し訳ありませんが、あなたが正しいです。私が意味していたのは、バックグラウンドで再生される音楽は、サービスから得られる可能性が最も高いということでした。アプリケーションはバックグラウンドで継続的に実行されるサービスを開始します。 PowerAmpがバックグラウンドで実行されているかどうかを調べたいと思っていたら、PowerAmpによって開始されたサービスを探す必要があります。 – roboguy12

+0

私はそのリンクで役に立った何かを見つけることができませんでした。これを確実に行う方法がまだ分かりません。 – Ran

関連する問題