1
所有人。 我有一種情況,當我從服務器接收的對象可以有多種類型。它可能是一個空的ArrayList或一些帶有填充值的Object類型,取決於不同的情況。Android GSON轉換錯誤 - 預計BEGIN_OBJECT,但是BEGIN_ARRAY
這就是爲什麼我得到一個錯誤GSON
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.support.v4.content.ModernAsyncTask$3.done(ModernAsyncTask.java:161)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 360 path $.user_fields
那麼,最後一個問題是如何構建客體的權利在客戶端從服務器與GSON lib中最簡單的方式響應轉換?
它期待的對象,但你的迴應是返回數組 –
權利,但我得到一個空數組,當沒有對象,另一種情況下,當服務器有一個信息,它迴應我一個對象 –
你如何解析JSON?添加代碼。爲什麼服務器響應一個空數組?爲什麼不是空的物體? – AndroidRuntimeException