3
アンドロイドでは、Logcatを見て実行中のアクティビティに関する情報を得ることができます。アンドロイドで実行中のすべてのアクティビティに関する情報をプログラムで取得するにはどうすればよいですか?
たとえば、カメラを開くと、そのカメラはLogcatに記録されます。
プログラムでこの情報を取得する方法はありますか?
アンドロイドでは、Logcatを見て実行中のアクティビティに関する情報を得ることができます。アンドロイドで実行中のすべてのアクティビティに関する情報をプログラムで取得するにはどうすればよいですか?
たとえば、カメラを開くと、そのカメラはLogcatに記録されます。
プログラムでこの情報を取得する方法はありますか?
ActivityManager m = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> runningTaskInfoList = m.getRunningTasks(10);
Iterator<RunningTaskInfo> itr = runningTaskInfoList.iterator();
while(itr.hasNext())
{
RunningTaskInfo runningTaskInfo = (RunningTaskInfo)itr.next();
int id = runningTaskInfo.id;
CharSequence desc= runningTaskInfo.description;
String topActivity = runningTaskInfo.topActivity.getShortClassName();
int numOfActivities = runningTaskInfo.numActivities;
}
注:あなたはマニフェストファイル内android.permission.GET_TASKS
許可を指定する必要があります。
このメソッドは、個人情報を漏洩する可能性のあるドキュメント中心のタスク管理に移行したため、Lolipopでは廃止されました。 – joecks