Intereting Posts
Как опубликовать обновление для приложения на рынке Android? Воспроизведение файлов SWF на устройстве Android без плагина Flash Player и без веб-просмотра Ошибка компиляции Android Hello-World: Intellij не может найти aapt Как установить фоновый рисунок кнопки изображения для разных состояний? Android registerOnSharedPreferenceChangeListener () вызывает сбой в пользовательском представлении Как открыть диспетчер AVD на Ubuntu Linux из командной строки? Неавторизованный при вызове Google GCM Исключение NullPointerException в IabHelper.queryPurchases Android RadioButton проблема в Android 4 Как автоматически импортировать необходимые классы в Android Studio с помощью ярлыка? HorizontalScrollView: авто-прокрутка до конца при добавлении новых просмотров? Создание и запись файла в папку / data устройства Android Есть ли разумный способ ссылаться на ресурсы приложений (R.string …) в статических инициализаторах Какова реальная цель тега contentDescription для Android? Android Alert Dialog не может найти вид

Получить установленную дату на Android

Есть ли способ узнать «Дата, когда приложение было установлено» на устройстве Android.

Искали экстенсивно, но не смогли найти ответ.

Не удалось найти что-либо в отношении даты, когда приложение было установлено через документацию / код PackageManager.

Большое спасибо. Mahim.

Solutions Collecting From Web of "Получить установленную дату на Android"

Или этот ( API-уровень 9 вверх!):

long installed = context .getPackageManager() .getPackageInfo(context.getPackag‌​eName(), 0) .firstInstallTime ; 

Используйте этот код:

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

Попробуйте один из них

 /** * The time at which the app was first installed. Units are as per currentTimeMillis(). * @param context * @return */ public static long getAppFirstInstallTime(Context context){ PackageInfo packageInfo; try { if(Build.VERSION.SDK_INT>8/*Build.VERSION_CODES.FROYO*/ ){ packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0); return packageInfo.firstInstallTime; }else{ //firstinstalltime unsupported return last update time not first install time ApplicationInfo appInfo = context.getPackageManager().getApplicationInfo(context.getPackageName(), 0); String sAppFile = appInfo.sourceDir; return new File(sAppFile).lastModified(); } } catch (NameNotFoundException e) { //should never happen return 0; } } 

Этот метод возвращает дату установки в формате String, как 12/25/2016 10:38:02 :

  private String getInstallDate() { // get app installation date PackageManager packageManager = getActivity().getPackageManager(); long installTimeInMilliseconds; // install time is conveniently provided in milliseconds Date installDate = null; String installDateString = null; try { PackageInfo packageInfo = packageManager.getPackageInfo(getActivity().getPackageName(), 0); installTimeInMilliseconds = packageInfo.firstInstallTime; installDateString = MiscUtilities.getDate(installTimeInMilliseconds, "MM/dd/yyyy hh:mm:ss"); } catch (PackageManager.NameNotFoundException e) { // an error occurred, so display the Unix epoch installDate = new Date(0); installDateString = installDate.toString(); } return installDateString; }