0
當用戶在智能手機上安裝他的最新Android版本時,我想獲取日期和時間(並不那麼重要)。 我在谷歌搜索和在Android參考中看過,但didn'f找到這樣的事情。如何獲取最新安裝的android版本的日期?
我的第一個想法是類android.os.BUILD
但沒有什麼。
android.od.BUILD.Time
只是Build編譯的日期。
感謝您的幫助!
當用戶在智能手機上安裝他的最新Android版本時,我想獲取日期和時間(並不那麼重要)。 我在谷歌搜索和在Android參考中看過,但didn'f找到這樣的事情。如何獲取最新安裝的android版本的日期?
我的第一個想法是類android.os.BUILD
但沒有什麼。
android.od.BUILD.Time
只是Build編譯的日期。
感謝您的幫助!
private void getAppInstallTime(){
PackageManager pm = getApplicationContext().getPackageManager();
try {
PackageInfo info = pm.getPackageInfo("com.example.sample", 0);
Field field = PackageInfo.class.getField("firstInstallTime");
long timestamp = field.getLong(info);
Date date = new Date(timestamp);
Log.e("DATE", date + "InMillies "+timestamp);
ApplicationInfo appInfo = pm.getApplicationInfo("com.example.sample", 0);
String appFile = appInfo.sourceDir;
long installed = new File(appFile).lastModified();
Date dateMod = new Date(installed);
Log.e("Updates","Updated Time"+dateMod+" time in millies"+installed);
} catch (NameNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (SecurityException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalArgumentException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (NoSuchFieldException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
對不起,我不想擁有一個應用程序的日期,但它的最後一次更新時,android操作系統的日期。 – GoKo
這不存在。您可以根據創建的某些系統文件的時間戳來獲取日期,但這可能不太可靠。解釋你需要什麼,也許有人可以提出解決你的具體問題的替代方法。 – 323go