我在做對吧?當我按下後,我想要使用SharedPreferences保存卡片數組(對象),但是每當我運行該程序時,都會出現錯誤。或者我應該在onCreate上轉換對象?將對象轉換爲json並使用sharedpreferences保存
@Override
protected void onPause() {
String json = new Gson().toJson(cards);
SharedPreferences prefs = getSharedPreferences("CARDARRAY",
MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("carddArray", json);
editor.commit();
Toast.makeText(getBaseContext(), "Settings saved", Toast.LENGTH_SHORT)
.show();
super.onPause();
}
logcat的
02-13 23:22:50.091: E/AndroidRuntime(17941): FATAL EXCEPTION: main
02-13 23:22:50.091: E/AndroidRuntime(17941): java.lang.NoClassDefFoundError: com.google.gson.Gson
02-13 23:22:50.091: E/AndroidRuntime(17941): at edu.np.ece.mapg.flashnote.Collections.onPause(Collections.java:118)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.Activity.performPause(Activity.java:5319)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1226)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3142)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3111)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3089)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread.access$800(ActivityThread.java:154)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.os.Handler.dispatchMessage(Handler.java:99)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.os.Looper.loop(Looper.java:137)
02-13 23:22:50.091: E/AndroidRuntime(17941): at android.app.ActivityThread.main(ActivityThread.java:5214)
02-13 23:22:50.091: E/AndroidRuntime(17941): at java.lang.reflect.Method.invokeNative(Native Method)
02-13 23:22:50.091: E/AndroidRuntime(17941): at java.lang.reflect.Method.invoke(Method.java:511)
02-13 23:22:50.091: E/AndroidRuntime(17941): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
02-13 23:22:50.091: E/AndroidRuntime(17941): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
02-13 23:22:50.091: E/AndroidRuntime(17941): at dalvik.system.NativeStart.main(Native Method)
什麼錯誤?什麼時候? logcat中有什麼? –
後LogCat PLZ –
@Aleks G logcat發佈 – user3262536