簡體   English   中英

(Android)檢測何時啟動另一個應用程序/所有應用程序的啟動計數

[英](Android) detect when another app is launched / launch count of all app

我想獲取有關上次使用的另一個應用程序的信息,或啟動時間,或另一個應用程序的啟動次數。 (就像使用情況統計信息一樣)

使用情況統計 信息

我在這里找到了類似的問題和答案。 但是這些在android M或android L中不起作用。

有什么方法可以獲取我需要的信息嗎(例如,可以)

謝謝。

1 在此處輸入圖片說明

1 在此處輸入圖片說明

您可以獲取最UsesStats的前台應用程序的UsesStats 但使用此功能,用戶有權分別為每個應用接受拒絕 獲得許可

Intent intent = new Intent(Settings.ACTION_USAGE_ACCESS_SETTINGS);

這將返回前台應用程序。

    String topPackageName ;
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
    UsageStatsManager mUsageStatsManager = (UsageStatsManager)getSystemService("usagestats");                       
    long time = System.currentTimeMillis(); 
    // We get usage stats for the last 10 seconds
    List<UsageStats> stats = mUsageStatsManager.queryUsageStats(UsageStatsManager.INTERVAL_DAILY, time - 1000*10, time);                                    
    // Sort the stats by the last time used
    if(stats != null) {
        SortedMap<Long,UsageStats> mySortedMap = new TreeMap<Long,UsageStats>();
        for (UsageStats usageStats : stats) {
            mySortedMap.put(usageStats.getLastTimeUsed(),usageStats);
        }                    
        if(!mySortedMap.isEmpty()) {
            topPackageName =  mySortedMap.get(mySortedMap.lastKey()).getPackageName();                                   
        }                                       
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM