【发布时间】:2017-05-26 20:39:37
【问题描述】:
我像下面的代码一样使用了改造。但是我找不到任何解决方案和官方文档来帮助我阻止泄漏并关闭响应机构。也许有人知道它应该是什么样子? 我的改造电话:
PlacesAPI.Factory.getInstance().getPlaces().enqueue(new Callback<Places>() {
@Override
public void onResponse(Call<Places> call, Response<Places> response) {
for (int i = 0; i < response.body().getPosts().size(); i++) {
if (response.body().getPosts().get(i).getNazwa().equals(shopName)) {
addMarker(Double.parseDouble(response.body().getPosts().get(i).getDlug()),
Double.parseDouble(response.body().getPosts().get(i).getSzer()));
}
}
}
@Override
public void onFailure(Call<Places> call, Throwable t) {
}
});
【问题讨论】:
-
您不能多次致电
response.body() -
在地图上添加所有标记后,我尝试清除响应。我在官方文档中读到总是 close() 应该完成。 android studio 也会向我抛出关于 logcat 的信息,我有泄漏并且没有在可以使用的地方使用 close()。之后我通过 Eclipse Mat 检查堆,我看到许多响应对象。
-
响应对象应该只有一个,因为它是一个参数
-
你在使用改造 2 吗?
-
是的,改造 2
标签: android retrofit retrofit2