我正在尝试使用自定义对象的矢量并将它们放入Gson字符串中。当自定义编写的DownloadTasks的Vector处于停止状态时,我能够这样做。一旦下载开始并尝试Gson.toJson,就会抛出illegalArgumentException。
我不知道Gson正在哪个内部物体投入适合。主题? HttpClient的?一个字节缓冲区?
有没有办法让Gson更加冗长,哪个Object / Type不享受?
编辑:为方便起见,包括堆栈跟踪。
E/AndroidRuntime(21274): FATAL EXCEPTION: main
E/AndroidRuntime(21274): java.lang.RuntimeException: Unable to pause activity {com.spatialview.threedeecentral.android/com.yyy.xxx.android.activity.DownloadsActivity}: java.lang.IllegalArgumentException
E/AndroidRuntime(21274): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2358)
E/AndroidRuntime(21274): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2315)
E/AndroidRuntime(21274): at android.app.LocalActivityManager.performPause(LocalActivityManager.java:200)
E/AndroidRuntime(21274): at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:184)
E/AndroidRuntime(21274): at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:288)
E/AndroidRuntime(21274): at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:691)
E/AndroidRuntime(21274): at android.widget.TabHost.setCurrentTab(TabHost.java:341)
E/AndroidRuntime(21274): at android.widget.TabHost$2.onTabSelectionChanged(TabHost.java:140)
E/AndroidRuntime(21274): at android.widget.TabWidget$TabClickListener.onClick(TabWidget.java:456)
E/AndroidRuntime(21274): at android.view.View.performClick(View.java:2538)
E/AndroidRuntime(21274): at android.view.View$PerformClick.run(View.java:9152)
E/AndroidRuntime(21274): at android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime(21274): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(21274): at android.os.Looper.loop(Looper.java:130)
E/AndroidRuntime(21274): at android.app.ActivityThread.main(ActivityThread.java:3691)
E/AndroidRuntime(21274): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(21274): at java.lang.reflect.Method.invoke(Method.java:507)
E/AndroidRuntime(21274): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
E/AndroidRuntime(21274): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
E/AndroidRuntime(21274): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(21274): Caused by: java.lang.IllegalArgumentException
E/AndroidRuntime(21274): at com.google.gson.internal.$Gson$Preconditions.checkArgument($Gson$Preconditions.java:42)
E/AndroidRuntime(21274): at com.google.gson.JsonPrimitive.setValue(JsonPrimitive.java:97)
E/AndroidRuntime(21274): at com.google.gson.JsonPrimitive.<init>(JsonPrimitive.java:87)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.visitPrimitive(JsonSerializationVisitor.java:122)
E/AndroidRuntime(21274): at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:116)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
E/AndroidRuntime(21274): at com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
E/AndroidRuntime(21274): at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
E/AndroidRuntime(21274): at com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
E/AndroidRuntime(21274): at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
E/AndroidRuntime(21274): at com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
E/AndroidRuntime(21274): at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
E/AndroidRuntime(21274): at com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
E/AndroidRuntime(21274): at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
E/AndroidRuntime(21274): at com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
E/AndroidRuntime(21274): at c
W/ActivityManager( 2736): Force finishing activity com.spatialview.threedeecentral.android/.activity.MainTabWidget
凯文