{
responseCode: 1,
responseCodeText: "ok",
response: [
{
lat: 67.2422432322,
lng: 25.1441441441,
title: "Point na mapě 1",
desc: "Lorem ipsum dolor sit amet, consectetur adipisicing elit.\nVero praesentium fugiat nobis pariatur cupiditate saepe dolorum, soluta dignissimos.",
photo: [
"http://photo3.jpg",
"http://photo4.jpg",
]
},
{
lat: 39.1234787,
lng: 25.2242445,
title: "Point na mapě 2",
desc: "Possimus veritatis, neque a et odit ad itaque iusto asperiores perspiciatis voluptates,\nvero praesentium fugiat nobis pariatur cupiditate saepe dolorum, soluta dignissimos.",
photo: [
"http://photo1.jpg",
"http://photo2.jpg",
]
},
//other
public interface PointsInterface {
String BASE_URL = "MY_URL/";
@POST("getPointsOnMap")
Call<List<PointsOnMap>> getPointsOnMap();
class Factory {
private static PointsInterface service;
public static PointsInterface getInstance() {
if (service == null) {
Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create()).baseUrl(BASE_URL).build();
service = retrofit.create(PointsInterface.class);
return service;
} else {
return service;
}
}
}
}
public void serviceInit() {
PointsInterface.Factory.getInstance().getPointsOnMap().enqueue(new Callback<List<PointsOnMap>>() {
@Override
public void onResponse(Call<List<PointsOnMap>> call, Response<List<PointsOnMap>> response) {
List<PointsOnMap> result = response.body();
Log.d("response", "Number of points received: " + result.size());
}
@Override
public void onFailure(Call<List<PointsOnMap>> call, Throwable t) {
Log.e("error", "Error");
}
});}
模型
public class PointsOnMap {
@SerializedName("lat") private Double lat;
@SerializedName("lng") private Double lng;
@SerializedName("title") private String title;
@SerializedName("desc") private String desc;
public PointsOnMap(Double lat, Double lng, String title, String desc) {
this.lat = lat;
this.lng = lng;
this.title = title;
this.desc = desc;
}
public Double getLat() {
return lat;
}
public void setLat(Double lat) {
this.lat = lat;
}
public Double getLng() { return lng; }
public void setLng(Double lng) {
this.lng = lng;
}
public String getTitle() { return title; }
public void setTitle(String title) {
this.title = title;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
}
您的改装界面
@POST("getPointsOnMap")
Call<List<PointsOnMap>> getPointsOnMap();
应该是
@POST("getPointsOnMap")
Call<PointsOnMapResponse> getPointsOnMap();
其中PointsonMapResponse
为
public class PointsOnMapResponse {
@SerializedName("responseCode")
long responseCode;
@SerializedName("responseCodeText")
String responseCodeText;
@SerializedName("response")
List<PointsOnMap> response;
//getters, setters
}
问题内容: 我在解析json数据时遇到此错误: 我找不到解决方案。我的json数据是: 我将图像转换为字节数组,如下所示: 我正在将图标从字节数组转换为Bitmap,如下所示: 我反序列化JSON响应的代码: 这是我的ProjectContainer类: 这是Project类: 如果您能帮助我解决这个问题,我将不胜感激。提前致谢 问题答案: 当您尝试解析该字段时会引发Exception ,因为在J
问题内容: 我在解析JSON数据时遇到以下错误: 预期为begin_array,但在第1行第34列处为STRING 我找不到解决办法。我的JSON是以下内容: 这是我的PersonContent类: 以下是人员类别: 这是我反序列化前面提到的JSON数据的代码 我尝试了在这里找到的所有解决方案,但找不到相同的JSON。 问题答案: 错误出现在您收到的json中:您的类需要一个数组,因为 但是然后在
我不知道该修好它 我怎么了? 我的json是 E/DDD:onFailure:java.lang.IllegalStateException:应为BEGIN_ARRAY,但在第1行第44列路径$.data处为BEGIN_OBJECT 有什么问题?谢谢!
首先,我从服务器获得了这个Json对象,然后使用reverfit lib显示曲目名称是列表。但其返回此问题应为BEGIN_ARRAY,但在COLOMUNS 1处为BEGIN_OBJECTS。 我正在使用这些类: 并且此跟踪类:
我正在尝试使用改版在我的应用程序上实现登录,但是我一直得到这个错误不确定是什么错误,java.lang.IllegalStateException:应该是BEGIN_OBJECT,但应该是BEGIN_ARRAY 这是邮递员的回复 和我的登录类