這取決於會有多少玩家數據。但是除非有很多玩家數據,否則我會建議使用共享偏好,尤其是如果有像Player對象這樣簡單的東西,或者一系列Player對象。這將覆蓋它。
對於玩家列表,您可以使用類似下面的內容,並且如果您只想保存1,則將該列表的任何引用更改爲Player對象。如果您擁有大量數據,玩家或需要您可能希望使用SQLLite的額外安全性。
public class PlayerPrefs {
private static final String PLAYERS_PREF_FILE = "PLAYERS_PREF_FILE";
private static final String PLAYERS = "PLAYERS";
private static SharedPreferences getPrefs(){
final Context context = ApplicationData.getAppContext();
return context.getSharedPreferences(PLAYERS_PREF_FILE, Context.MODE_PRIVATE);
}
public static List<Player> getPlayers() {
final Gson gson = new Gson();
Type listType = new TypeToken<ArrayList<Player>>() {}.getType();
SharedPreferences prefs = getPrefs();
String players = prefs.getString(PLAYERS, null);
if (players == null){
return new ArrayList<Player>();
}
return gson.fromJson(players, listType);
}
public static void setPlayers(List<Player> players) {
final Gson gson = new Gson();
if (players != null) {
final SharedPreferences prefs = getPrefs();
SharedPreferences.Editor editor = prefs.edit();
editor.putString(PLAYERS, gson.toJson(players));
editor.apply();
}
}
}
此外,你需要在你的搖籃文件中的以下內容:
compile 'com.google.code.gson:gson:2.5'
我覺得解釋更多關於玩家數據來增強人們爲您提供更好,更定製的答案將是有益的。 – sark9012
我編輯了一個問題。擡頭。 –
所有這些信息都可以包含在Player對象中。 –