我正在使用Retrofit 2.0-beta1。如何创建简单的同步请求并将JSON响应反序列化为POJO列表?这是我的界面:
public interface ArticlesAPI {
@GET("/articles")
List<ArticleResource> getArticles();
}
和
public class ArticleResource {
public String id;
public String name;
public Article toArticle() {
return new Article(id, name);
}
}
但是我收到了这个错误:
> Unable to create call adapter for > java.util.List<com.bla.bla.rest.resources.ArticleResource>
改造构建
Retrofit retrofit = (new Retrofit.Builder()).baseUrl(this.baseUrl).build();
ArticlesAPI api = retrofit.create(ArticlesAPI.class);
答案 0 :(得分:14)
如果您使用kotlin
coroutines
并且该功能不是suspend
函数
public interface ArticlesAPI {
@GET("url.../habits/progress/")
suspend fun getHabitsTasks(): BaseResponse<HabitResModel>
}
答案 1 :(得分:5)
根据您发布的代码,您必须从
更改 List<ArticleResource> getArticles();
到
Call<List<ArticleResource>> getArticles();
您可能还想明确调用addConverterFactory
来设置您要使用的转换器
答案 2 :(得分:0)
将retrofit2版本更改为build.gradle文件中的最新版本
implementation "com.squareup.retrofit2:retrofit:2.9.0"