Как реализовать асинхронный обратный вызов с использованием сетевой библиотеки Square Retrofit

Как разработчик iOS начал работать с Android, я наткнулся на "Дооснащение". Я понимаю, как реализовать синхронные запросы, но у меня возникают проблемы с внедрением асинхронных запросов с обратными вызовами успеха/отказа. В частности, синтаксис Callback неясен для меня, и нет конкретных примеров того, как это сделать на веб-сайте Retrofit , Square blogpost, представляющий Retrofit, или в другом месте, которое я видел. Может кто-нибудь, пожалуйста, напишите какой-нибудь пример кода на этом? Я зарегистрировал проблему в репозитории Retrofit с просьбой обновить README этой информацией.

Ответ 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);