0
我試圖將dishList
發送給我的服務,但它卡住了。即使我得到的對象從dishList
到dl
,它都不起作用。 但是如果我發送dl
如下面顯示的代碼,它的工作原理。因此,問題出在領域返回的對象中。如何通過retrofit2發送領域返回的數據?如何通過retrofit2發送領域返回的數據?
RealmResults<Dish> realmResults = realm.where(Dish.class).findAll();
List<Dish> dishList = realmResults.subList(0, realmResults.size());
List<Dish> dl = new ArrayList<>();
dl.add(new Dish());
mDishService.updateRepository(dishList).enqueue(new Callback<Boolean>() {
@Override
public void onResponse(Call<Boolean> call, Response<Boolean> response) {
if (response.body()) {
response.body();
}
}
@Override
public void onFailure(Call<Boolean> call, Throwable t) {
}
});
服務方法:
@POST("/v1/dishes/repo/u")
Call<Boolean> updateRepository(@Body List<Dish> dishes);
這是幹什麼的? 'if(response.body()){response.body(); }'......這個工作到底如何呢? 「mDishService.updateRepository(dishList)」與「mDishService.updateRepository(dl)」有什麼不同? –
請澄清「它卡住了」和「它不工作」,究竟發生了什麼?你在logcat中看到任何異常嗎? – Egor
@ cricket_007,@Egor問題是領域數據無法序列化,這就是爲什麼需要從realm中刪除領域綁定的原因,因爲我的'realmResults'可以使用'realm.copyFromRealm(realmResults);'。它給出沒有領域的列表 –