如何使用 Square 的 Retrofit 网络库实现异步回调

作为一名开始与Android合作的iOS开发人员,我遇到了Retrofit。我了解如何实现同步请求,但在实现具有成功/失败回调的异步请求时遇到问题。具体来说,回调语法对我来说是不清楚的,在Retrofit网站,介绍Retrofit的Square博客文章或我见过的其他地方都没有具体的例子来说明如何做到这一点。有人可以发布一些示例代码吗?我在改造存储库中提交了一个问题,要求他们使用此信息更新自述文件。


答案 1

经过更多的研究,只是在Android / Java世界中花费了更多的时间,我使用他们文档中的示例弄清楚了这一点。

接口:

@GET("/user/{id}/photo")  
void listUsers(@Path("id") int id, Callback<Photo> cb);

实现:

RestAdapter restAdapter = new RestAdapter.Builder()
            .setServer("baseURL")     
            .build();
ClientInterface service = restAdapter.create(ClientInterface.class);

Callback callback = new Callback() {
    @Override
    public void success(Object o, Response response) {

    }

    @Override
    public void failure(RetrofitError retrofitError) {

    }
};
service.listUsers(666, callback);

答案 2

推荐