我创建了一个带有rest api的android应用程序。在这里,我使用sips --deleteColorManagementProperties /path/to/image/folder/*.png
作为其余的api,并使用gson
连接这个rest api和android应用程序。
在我的应用程序中,我试图通过使用id从其余的api获取一些数据。然后我收到了以下错误日志。(我没有用这个错误日志发布我的应用名称。)
我应该在rest api中更改一些属性吗?或任何应用程序的更改。目前我在localhost上用rest api测试我的android应用程序。
我该怎么办才能处理这个例外?
这是我的错误日志,
retrofit
更新
我在改装调用中发现了以下代码行,我认为这是异常的原因,
com.google.gson.JsonSyntaxException: 1989-10-11
at com.google.gson.DefaultDateTypeAdapter.deserializeToDate(DefaultDateTypeAdapter.java:107)
at com.google.gson.DefaultDateTypeAdapter.deserialize(DefaultDateTypeAdapter.java:82)
at com.google.gson.DefaultDateTypeAdapter.deserialize(DefaultDateTypeAdapter.java:35)
at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:103)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:196)
at com.google.gson.Gson.fromJson(Gson.java:810)
at com.google.gson.Gson.fromJson(Gson.java:775)
at retrofit.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:36)
at retrofit.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:24)
at retrofit.OkHttpCall.parseResponse(OkHttpCall.java:148)
at retrofit.OkHttpCall.access$100(OkHttpCall.java:29)
at retrofit.OkHttpCall$1.onResponse(OkHttpCall.java:94)
at com.squareup.okhttp.Call$AsyncCall.execute(Call.java:168)
at com.squareup.okhttp.internal.NamedRunnable.run(NamedRunnable.java:33)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.text.ParseException: Unparseable date: "1989-10-11" (at offset 10)
at java.text.DateFormat.parse(DateFormat.java:555)
at com.google.gson.DefaultDateTypeAdapter.deserializeToDate(DefaultDateTypeAdapter.java:105)
... 17 more
但我不知道将此日期格式转换为通用日期格式。
目前我不知道如何处理此异常。有什么想法吗?
答案 0 :(得分:1)
它是一个变量Type mismatch Exception。确保模型类和json响应中的变量类型相同。
在您的情况下,检查"日期"的类型。 (你可能有不同的名字)变量。