をObjectに解析します。私はJavaのアンドロイドモシは、JSONは、私がObjectにJSONを解析するモシを使用
Message message = App.getMsg().fromJson(new String(responseBody, "UTF-8"));
をしかし、私のアプリがクラッシュし、ログに:
[{
"id": 4,
"phone": {
"id": 3,
"imei": "356938035643801",
"description": "Marek Kowalski"
},
"user": {
"id": 3,
"username": "marek.kowalski",
"first_name": "Marek",
"last_name": "Kowalski"
},
"user_id": 3,
"message": "Podejrzane zachowanie, sprawdĹş.",
"date_time_data": "2017-09-05T22:26:44.916927Z",
"longitude": 19.934113,
"latitude": 50.075086,
"confirm": 0,
"changetime": "2017-09-05T22:26:44.930357Z",
"has_coordinates": 1
}]
これは私のオブジェクトである:これは私のJSONある
public class Message {
String message;
double longitude;
double latitude;
int confirm;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public double getLongitude() {
return longitude;
}
public void setLongitude(double longitude) {
this.longitude = longitude;
}
public double getLatitude() {
return latitude;
}
public void setLatitude(double latitude) {
this.latitude = latitude;
}
public int getConfirm() {
return confirm;
}
public void setConfirm(int confirm) {
this.confirm = confirm;
}
}
そして私はobecjtするJSONを解析するためにこれをしましたこれを参照してください。
ユーザ空間の例外が検出されました! com.squareup.moshi.JsonDataException:期待BEGIN_OBJECTだがcom.squareup.moshi.ClassJsonAdapter.fromJson(ClassJsonAdapterでcom.squareup.moshi.BufferedSourceJsonReader.beginObject(BufferedSourceJsonReader.java:171) のパス$ で BEGIN_ARRAYました。 java:145) com.square.moshi.JsonAdapter $ 1.fromJson(JsonAdapter.java:68) at com.square.moshi.JsonAdapter.fromJson(JsonAdapter.java:33) at com.squareup.moshi.JsonAdapter .fromJson(JsonAdapter.java:37) jaceknikiel.apk.MsgActivity $ 1.onSuccess(MsgActivity.java:37) at com.loopj.android.http.AsyncHttpResponseHandler.handleMessage(Asy android.os.Handler.dispatchMessageでcom.loopj.android.http.AsyncHttpResponseHandler $ ResponderHandler.handleMessage(AsyncHttpResponseHandler.java:510) (Handler.java:102)android.osで でncHttpResponseHandler.java:351) 。 Looper.loop(Looper.java:154) android.app.ActivityThread.main(ActivityThread.java:6692) at java.lang.reflect.Method.invoke(ネイティブメソッド) at com.android.internal.os .ZygoteInit $ MethodAndArgsCaller.run com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1358)で(ZygoteInit.java:1468)
代わりに 'メッセージmessage'での'一覧 message'で使用すると、オブジェクト –
Raghunandan