我尝试在异步任务的后台返回到用户列表,我的班级:
public class ReadingModel{
@SerializedName("BillID")
@Expose
private String BillID;
@SerializedName("Mablagh")
@Expose
private String Mablagh;
@SerializedName("PayID")
@Expose
private String PayID;
public String getBillID(){return BillID;}
public void setBillID(String BillID){this.BillID=BillID;}
public String getMablagh(){return Mablagh;}
public void setMablagh(String Mablagh){this.Mablagh=Mablagh;}
public String getPayID(){return PayID;}
public void setPayID(String PayID){this.PayID=PayID;}
public static class List extends ArrayList<MobilePostModel> {}
}
并用这种方式调用我的异步任务:
List<ReadingModel> List_result= new AsyncRead().execute(params).get();
这是我的异步任务代码:
private class AsyncRead extends AsyncTask<GetReadingTask,Void,String>{
ReadingModel.List x;
@Override
protected List<ReadingModel> doInBackground(GetReadingTask... getReadingTasks) {
ir.behineh.wepapiinterface.GETREADINGINTERFACE.GetReading taskService=ServiceGenerator.createService(ir.behineh.wepapiinterface.GETREADINGINTERFACE.GetReading.class);
Call<ReadingModel.List> tasks=taskService.getReadings("application/x-www-form-urlencoded","application/json","bearer ");
try {
x=tasks.execute().body();
} catch (IOException e) {
e.printStackTrace();
}
return x;
}
}
但在这一行:
protected List<ReadingModel> doInBackground(GetReadingTask... getReadingTasks) {
得到这个错误:
尝试使用不兼容的返回类型
如何解决这个问题?谢谢。
答案 0 :(得分:1)
最后一个泛型类型是返回类型。您有String
,但返回List<ReadingModel>
。您需要更改您的班级声明:
private class AsyncRead extends AsyncTask<GetReadingTask, Void, List<ReadingModel>> {
//...
}