java - 您将如何保存改造的列表响应

标签 java android call retrofit2

我正在使用改造来获取一些信息。我想将该信息存储在本地变量中,以便如果用户决定 Collection 该项目,我可以将其本地保存在设备上。

public void fetchTrailerData(int movieId) {
    ApiInterface apiServies = ApiClient.getClient().create(ApiInterface.class);
    Call<TrailerResponse> call = apiServies.getTrailersForMovie(movieId, BuildConfig.OPEN_WEATHER_MAP_API_KEY);
    call.enqueue(new Callback<TrailerResponse>() {
        @Override
        public void onResponse(Call<TrailerResponse> call, Response<TrailerResponse> response) {
            List<Trailer> trailers = response.body().getResults();
            if (trailers != null && trailers.size() > 0 && !trailers.isEmpty()) {
                Utilities util = new Utilities(mContext);
                util.populateTrailer(mView, trailers);
            }
        }

        @Override
        public void onFailure(Call<TrailerResponse> call, Throwable t) {

        }
    });
}

当我寻找解决方案但没有找到解决方案时,有人可以为我指出正确的方向吗?

最佳答案

不,您不能使用局部变量。一旦执行流程离开onResponse方法,局部变量将被清除。 相反,使用实例变量并将返回的结果分配给它们。

Here是这样做的一个要点示例。

关于java - 您将如何保存改造的列表响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40336644/

相关文章:

java - 如何在 JAX-RS REST 方法中检索 JSON 消息正文?

java - 为什么 JUnit 调用 "object"而不是 "exception"?

android - 如何删除 ORMLite 数据库?

java - 如何在 EditText 中插入文本?

java - java模块可以调用c模块吗?

java - 通过 JSCH (SSH) 和 HTTPS 的反向隧道

java - 模拟在单元测试期间尝试调用方法,但实际上并不调用它

java - Python子进程调用预编译的java

android - 无法在 phonegap 中显示联系人数据图像

javascript - Object.prototype.toString.call(),为什么大部分例子用的是call()而不是apply?