我知道这个问题已经多次回答了。但我仍然无法弄清楚如何在我的代码中解决这个问题。
我使用foursquare搜索API来获取地点。
这是我的Retrofit界面:
public static final String API_URL ="https://api.foursquare.com/v2/";
public interface getNearPlace {
@GET("venues/search")
Call <List<FoursquareSearch.response.venues>> searchResults(@Query("ll") String ll,@Query("oauth_token") String oauth_token,@Query("v") String v);
}
public static getNearPlace create() {
return new Retrofit.Builder()
.baseUrl(API_URL)
.addConverterFactory(GsonConverterFactory.create())
.build()
.create(FourSquareAPI.getNearPlace.class);
}
public class FoursquareSearch {
private response response;
public FoursquareSearch.response getResponse() {
return response;
}
public class response {
private List<venues> venues;
public List<FoursquareSearch.response.venues> getVenues() {
return venues;
}
public class venues {
public String id;
public String name;`
public location location;
public List<categories> categories;
public Bitmap bitmap;
}
}
我总是得到
预计BEGIN_ARRAY,但在第1行第2栏路径为BEGIN_OBJECT $
错误。
答案 0 :(得分:0)
似乎响应应该在JSONArray中,并且你得到它JSONObject。尝试调试响应并进行比较。