2015-03-01 3 views
0

Я делаю приложение, которое дает игрокам высокий балл. Тем не менее, int для высокой оценки сбрасывается, когда я перезапускаю приложение. Есть ли способ сохранить int, поэтому высокий балл сохраняется даже при перезапуске приложения?Хранение значения int в android

(я использовал этот код, чтобы перезапустить приложение):

Intent i = getBaseContext().getPackageManager() 
      .getLaunchIntentForPackage(getBaseContext().getPackageName()); 
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(i); 

Спасибо заранее!

ответ

3

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

public class SharedPrefs { 
    public class SharedKeys { 
     final static String highscore = "highscore"; 
    } 
    public void storeInt(Context context, String key, int data) { 
     SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); 
     SharedPreferences.Editor editor = prefs.edit(); 
     editor.putInt(key, data); 
     editor.commit(); 
    } 

    public int getInt(Context context, String key) { 
     SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); 
     return prefs.getInt(key, 0); 
    } 
} 

Чтобы сохранить рекорд:

SharedPrefs prefs = new SharedPrefs(); 
prefs.storeInt(getApplicationContext(), SharedPrefs.SharedKeys.highscore, intScore); 

И получить его:

prefs.getInt(getApplicationContext(), SharedPrefs.SharedKeys.highscore) 

комментарий, если у вас есть какие-либо вопросы о том, как это работает.

Смежные вопросы