實現這個需求嘗試過幾個方法,具體實現情況如下:
1、getrunningtasks() :獲取當前開啟的所有應用程式,但是這個方法只能拿到最頂層的也就是顯示在前台的應用包名,無法滿足需求,且在android5.0後該方法已經失效。
(1)新增許可權
(2)在**中動態設定許可權,並獲取指定時間範圍內的應用列表的統計資訊列表
第一步新增的許可權,是允許檢視應用的使用情況的許可權,由於android5.0以下是沒有該許可權設定頁面的,所以要判斷一下安卓版本。
usagestats usagestatsresult = null;
list livingusagestates = new arraylist<>();
if (android.os.build.version.sdk_int >= build.version_codes.lollipop)
}
// 按照使用時間對應用進行排序
collections.sort(livingusagestates, new comparator() else
}});for (int i = 0; i < livingusagestates.size(); i++)
usagestatsresult = livingusagestates.get(1);
}
(4)得到上乙個在前台得應用包名
usagestats initstat = getforegroundusagestats(context, start_time, end_time);
if (initstat != null)
總結:大體邏輯基本這樣,可能細節之處還有不足需要調整,希望能給有該需求的開發人員乙個參考。
獲取Android原始碼
git是linux torvalds為了幫助管理linux核心開發而開發的乙個開放原始碼的公布式版本控制軟體。在git版本控制系統中,每乙個工作目錄都包含乙個完整倉庫,它們支援離線工作。android是由kernel dalvik bionic build等多個git專案組成的,所以android專...
Android原始碼獲取方法
android原始碼獲取方法。作為乙個android開發者,必要的時候閱讀以下原始碼可以拓寬一下自己的視野和對android的認知程度。google的android的原始碼管理倉庫是用的是git。android是乙個開源手機終端系統,基於linux核心的。我們在android source資料夾上右...
android原始碼獲取方法
git是linux torvalds為了幫助管理linux 核心開發而開發的乙個開放原始碼的分布式版本控制軟體,git這樣的分布式版本控制系統中,每乙個工作目錄都包含乙個完整倉庫,它們可以支援離線工作,本地提交可以稍後提交到伺服器上。因為android是由多個git專案組成,所以android專案編...