我正在制作一款让玩家获得高分的应用。但是,当我重置应用程序时,高分的int重置。有没有办法保存int,以便即使重新启动应用程序也能保存高分?
(我使用此代码重新启动应用程序):
Intent i = getBaseContext().getPackageManager()
.getLaunchIntentForPackage( getBaseContext().getPackageName() );
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
提前致谢!
答案 0 :(得分: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)
如果您对此工作原理有任何疑问,请发表评论。