我正在切换到 Retrofit 并尝试了解将其与异步回调一起使用的适当架构。
例如我有一个接口(interface):
interface RESTService{
@GET("/api/getusername")
void getUserName(@Query("user_id") String userId,
Callback<Response> callback);
}
我从主要 Activity 中运行它:
RestAdapter restAdapter = new RestAdapter.Builder()
.setServer("WEBSITE_URL")
.build();
RESTService api = restAdapter.create(RESTService.class);
api.getUserName(userId, new Callback<Response> {...});
然后用户旋转设备,我有新创建的 Activity ......这里发生了什么?我怎样才能得到对新 Activity 的响应(我假设后台的 api 调用将比第一个 Activity 的生命周期长)。也许我必须使用回调的静态实例或什么?请告诉我正确的方法...
最佳答案
使用 otto . 有很多样本可以混合otto和retrofit,例如https://github.com/pat-dalberg/ImageNom/blob/master/src/com/dalberg/android/imagenom/async/FlickrClient.java
或阅读这篇文章 http://www.mdswanson.com/blog/2014/04/07/durable-android-rest-clients.html 它几乎可以回答所有问题
关于android - 对重新创建的 Activity 实现改造回调的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21811999/