Articles of Модернизация

Разделить декларацию сервиса на несколько интерфейсов

Я создаю приложение, связывающее API с примерно 265 методами. Я бы очень хотел разбить объявление этих API на несколько файлов, чтобы они были организованы и доступны. Однако «Дооснащение» явно запрещает объединение интерфейсов через расширение. java.lang.IllegalArgumentException: Interface definitions must not extend other interfaces. Я пытался заявить об этом следующим образом. public interface ApiService extends ProfileService, AccountService […]

Пользовательская переоснащение ErrorHandler дает UndeclaredThrowableException

Основываясь на этом сообщении Как я должен обрабатывать «Нет подключения к Интернету» с Retrofit на Android Я сделал собственный ErrorHandler private static class CustomErrorHandler implements ErrorHandler { @Override public Throwable handleError(RetrofitError error) { if (error.isNetworkError()) { return new MyNetworkError(); } return error.getCause(); } } И теперь мое приложение падает, и я получаю следующее: java.lang.reflect.UndeclaredThrowableException Есть […]

Как я могу использовать библиотеку модернизации с помощью progressbar?

Я использую модифицированную библиотеку. Как я могу использовать progressbar перед вызовом метода обратного вызова? public void getMovies() { MovieClient.getWeather().movies(MovieClient.getRandomMovie(), new Callback<MovieRequest>() { @Override public void success(MovieRequest movieRequest, Response response) { Picasso.with(getApplicationContext()).load(movieRequest.getPoster()).into(image); } @Override public void failure(RetrofitError error) { Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show(); } }); }

Дооснащение 2.0 OnFailure – Сырьевая реакция

Я использую retrofit для вызова веб-сервиса, а модификация бросает неудачу, сообщение от «Throwable» дает мне Java.lang.IllegalStateException: ожидается BEGIN_OBJECT, но был STRING в строке 1 столбец 1 путь $ Я предполагаю, что это происходит из-за того, что веб-служба .NET запускает ошибку и не возвращает JSON. Но чтобы доказать это, мне нужно иметь возможность увидеть исходный ответ […]

Клиент Square Retrofit: как включить / отключить followRedirects? Как перехватить URL-адрес перенаправления?

Я использую Square's Retrofit Client для простого запроса от приложения Android. Вот так: RestAdapter restAdapter = new RestAdapter.Builder() .setServer(Configurations.getInstance().plistMap.get("PTBaseURL")) .setRequestHeaders(new RequestHeaders() { @Override public List<Header> get() { List<Header> headers = new ArrayList<Header>(); Header authHeader = new Header("Authorization", authType + " " + UserManager.getInstance().currentUser.token); headers.add(authHeader); } return headers; } }) .build(); this.service = restAdapter.create(ClientInterface.class); Одна конечная […]

Использовать модификацию для загрузки файла изображения

Я использую Retrofit 1.6.0 в своем проекте Android, URL запроса: https://example.com/image/thumbs/filename/sample.png Мой интерфейс: public interface ImageService { @GET("/image/thumbs/filename/{filename}") @Streaming void getThumbs( @Path("filename") String filename, Callback<Response> callback ); } HTTP-запрос был успешным, но произошла ошибка D/Retrofit(27613): —> HTTP GET https://example.com/image/thumbs/filename/sample.png D/Retrofit(27613): —> END HTTP (no body) D/Retrofit(27613): <— HTTP 200 https://example.com/image/thumbs/filename/sample.png (451ms) D/Retrofit(27613): : HTTP/1.1 200 […]

Дооснащение дает EOFException только в первый раз

Я впервые использую framework Retrofit в своем Android-проекте. Он обрабатывает связь с бэкэнд. Теперь самая странная часть – то, что на Android 4.4 все работает как шарм. На каждой версии ниже. Я получаю тип RetrofitError java.io.EOFException. Таким образом, он не работает в первый раз, а затем, когда я нажимаю кнопку повтора, он работает. Итак, почему […]

Как настроить преобразование JSON тела ответа в «Дооснащение»?

Я использую Retrofit для реализации клиента Rest Client, и я столкнулся с некоторыми проблемами при попытке преобразовать тело ответа в объект модели. В моем интерфейсе есть следующее: @POST("/users") void createUser(@Body RegisterUserToken token, Callback<User> callback); Класс My User – это в основном POJO с: public class User { private int id; private String username; private String […]

Выполнять запросы с помощью «Дооснащения» внутри пользовательского Runnable

Я перехожу от Volley к пользовательской реализации с помощью Retrofit , но я пытаюсь добавить к моей реализации некоторые из функций Volley которые мне нравились, например RequestQueue.cancel (String tag) Если в запросе есть запрошенный тег, он отменяется путем установки boolean значения mCanceled в значение true. Метод run проверяет это значение и возвращает, если оно истинно. […]

Воссоздание флеш-апи-звонка в Android с помощью дооснащения

У меня есть флеш-приложение и api на сервере, который работает со следующим URL-адресом, отправленным с терминала curl -i -H "Content-type: application/json" -X GET http://myapp.com/890/14000/10000/007 -d '{"id":"3240f056c8f5fb"}' Я пытаюсь воссоздать это, используя модификацию на Android. Я использую версию 1.7, так как это работает с некоторым устаревшим кодом, который не показан здесь. Вот соответствующая часть класса приложения […]