Выполнить код только один раз после того, как приложение установлено на Android-устройстве

Я хочу запустить кусок кода один раз только после установки приложения. После того, как он был выполнен, этот фрагмент кода не должен вызываться снова, даже для обновления.

  1. Проверьте, является ли логическое значение X равным True в общих настройках
  2. Если не:
    а. Запустить специальный код
    б. Сохранить x как true в общих настройках

Например:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); if(!prefs.getBoolean("firstTime", false)) { // run your one time code SharedPreferences.Editor editor = prefs.edit(); editor.putBoolean("firstTime", true); editor.commit(); } 

В прошлом я использовал общие предпочтения, но если вы хотите что-то сделать, то вы также можете посмотреть на установочный приемник. MyInstallReciever реализует BroadcastReciever

 <receiver android:name="com.MyInstallReciever" android:exported="true"> <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER" /> </intent-filter> </receiver> 

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

  if (getPreferences(MODE_PRIVATE).getBoolean("is_first_run", true)) { /* * your code here */ getPreferences(MODE_PRIVATE).edit().putBoolean("is_first_run", false).commit(); }