1
出於安全原因,我正在開發應用程序分析用戶行爲。我用這個片段編寫了一個服務,它檢測運行Android OS 4.4
的設備中前臺的所有服務,並將它們收集到一個列表中。如何檢測Android 5.0中的前臺服務lollipop
List<ActivityManager.RunningServiceInfo> l = activityManager.getRunningServices(50);
Iterator<ActivityManager.RunningServiceInfo> i = l.iterator();
while (i.hasNext()) {
ActivityManager.RunningServiceInfo runningServiceInfo = (ActivityManager.RunningServiceInfo) i.next();
if (runningServiceInfo.foreground) {
newList.add(runningServiceInfo.service.getClassName());
}
}
我的設備上Android OS 5.0
嘗試這個曾經和我注意到它不檢測服務前臺,像runtastic's service foreground
和這個SDK及以上版本,內置的其他應用程序。 它可能依賴於新的前臺服務策略嗎?
你可以在這裏找到一個可能的解決方案:http://stackoverflow.com/questions/30619349/android-5-1-1-and-above-getrunningappprocesses-returns-my -application-packag –
也許我沒有說清楚:我只對前臺服務感興趣,而不是對前臺的活動感興趣。 –