Нужен пример, показывающий, как выполнять асинхронные HTTP-запросы - PullRequest
6 голосов
/ 23 февраля 2010

Я использую веб-сервис, поэтому я хочу использовать асинхронный поток для запроса проверки подлинности HTTP и другой поток позже, чтобы отправлять дополнительные запросы на обслуживание во время работы моего основного потока.

Хотелось бы увидеть хороший пример того, как это сделать и как показать сообщения о занятости в основном приложении. Как основное приложение узнает, когда закончится поток? А что если мой поток встречает исключения, как мне с этим справиться?

HTTP-запросы отправляются позже, используйте те же файлы cookie, которые были настроены при первом запросе на аутентификацию, поэтому последующие запросы будут использовать те же файлы cookie и будут работать?

Ответы [ 3 ]

6 голосов
/ 13 апреля 2010
5 голосов
/ 23 февраля 2010
1 голос
/ 13 апреля 2013

Библиотека AndroidAsync, которую я написал для автоматической обработки, будет работать в фоновом режиме и повторно вызывать поток пользовательского интерфейса:

https://github.com/koush/AndroidAsync

// url is the URL to download. The callback will be invoked on the UI thread
// once the download is complete.
AsyncHttpClient.getDefaultInstance().get(url, new AsyncHttpClient.StringCallback() {
    // Callback is invoked with any exceptions/errors, and the result, if available.
    @Override
    public void onCompleted(Exception e, String result) {
        if (e != null) {
            e.printStackTrace();
            return;
        }
        System.out.println("I got a string: " + result);
    }
});
...