重新安裝我的應用程序後,我的if語句中的代碼正在被訪問,儘管我的SharedPreferences條目尚未創建。我在eclipse中使用模擬器,數據是否需要重新安裝而不是重新安裝?謝謝爲什麼我的SharedPreferences條目在重新安裝後沒有被清除?
prefs = getSharedPreferences("appData", 0);
Gson gson = new Gson();
String gsonStr = prefs.getString("playerString", null);
if(gsonStr != null)
{
//This code is being accessed on the apps first onCreate() call prior to being reinstalled
Player[] tempArray = gson.fromJson(gsonStr, Player[].class);
Log.d("First Player", "" + tempArray[0]);
}
protected void onPause()
{
super.onPause();
if(savedPlayers != null)
{
Gson gson = new Gson();
String gsonStr = gson.toJson(savedPlayers.toArray());
prefs = getSharedPreferences("appData", 0);
SharedPreferences.Editor editor = prefs.edit();
//editor().clear();
Log.d("GSONString",gson.toString());
editor.putString("playerString", gsonStr);
editor.putInt("ArraySize", savedPlayers.size());
editor.commit();
}
}
運行配置>擦除用戶數據完成這項工作。 – Deco 2012-04-17 17:56:35
如果陳述仍然讓我過去,那麼Ach一定是別的東西。 – Deco 2012-04-17 18:16:28
你使用的是什麼api級別的模擬器? – ootinii 2012-04-17 18:23:11