サービスが以下を確認することは可能ですか?
- アプリが実行されているかどうか?
- はいの場合、実行中のアプリはバックグラウンドですか、それともフォアグラウンドですか?それを行う方法を提案してください。
サービスが以下を確認することは可能ですか?
アプリが実行されているかどうかを知るには、 getRunningTasksを使用する必要があります。
ドキュメントから:
パブリックリストgetRunningTasks(int maxNum)
現在実行中のタスクのリストを返します。最新のタスクが最初で、その後に古いタスクが順番に表示されます。
これを機能させるには、AndroidManifest.xmlにこれを含める必要があります
<uses-permission android:name="android.permission.GET_TASKS" />
そして、バックグラウンド/フォアグラウンドで実行されているアプリについては、このリンクを参照してください
List<RunningAppProcessInfo> apps = ((ActivityManager) _context.getSystemService(Context.ACTIVITY_SERVICE)).getRunningAppProcesses();
...これが、実行中のすべてのアプリを取得する方法です。「apps.get(i).processName」またはsthを使用して、確認できるプロセス名を取得します。
そして<uses-permission android:name="android.permission.GET_TASKS" />
、あなたのマニフェストで使用して、あなたが正しい許可を持っていることを確認してください。