2013-07-07 28 views
0

我有電話的Android得安裝上一定首先應用程序安裝日期

public String[] getAppNames() { 
    String[] apps = {}; 
    String a = ""; 
    PackageManager packManager = getPackageManager(); 

    List<ApplicationInfo> installedApps = packManager 
      .getInstalledApplications(PackageManager.GET_META_DATA); 
    for (ApplicationInfo appInfo : installedApps) { 
     a = a + appInfo.loadLabel(packManager) + ","; 
     apps = a.split(","); 
    } 
    return apps; 
} 

與我的所有應用標籤的數組列表現在我想從昨天安裝到一個額外的數組列表的應用程序獲得的所有標籤。我怎麼做?

回答

0

this question的第二個答案可以幫助您找到日期。如果日期是昨天,請將該應用程序包含在您的列表中。

+0

問題是每個應用程序在getPackageInfo(「package.name」,0).firstInstallTime; – Tommy

+1

爲什麼它是一個問題?您可以從ApplicationInfo對象中獲取'packageName'字段。 – Jong

+0

哦..我沒有看到明顯的。正在尋找類似getPackageName或.loadPackageName的東西..感謝您的幫助:) – Tommy

0

使用此代碼:

PackageManager pm = context.getPackageManager(); 
ApplicationInfo appInfo = pm.getApplicationInfo("app.package.name", 0); 
String appFile = appInfo.sourceDir; 
long installed = new File(appFile).lastModified(); 

有一個問題是時間回到這裏,每次都會發生變化時,包更新上面的代碼。如果它不影響你的moto,那麼你必須從這個返回的值中找出日期,並與昨天的日期進行比較,如果它匹配放在另一個數組中。

+0

和lastModified始終是安裝日期並且在更新時不會更改? – Tommy

相關問題