2010-02-23 123 views
6

即時通訊使用Web服務,因此我希望使用異步線程進行HTTP身份驗證請求,並且稍後使用另一個線程在運行主線程時發出其他服務請求。需要顯示如何執行異步HTTP請求的示例

希望看到一個很好的例子,說明如何做到這一點,以及如何在主應用程序中以某種方式顯示繁忙消息。主應用程序如何知道線程何時完成?如果我的線程遇到異常,我該如何處理呢?

HTTP請求稍後發送,使用由第一個認證請求建立的相同的cookie,那麼後面的請求會拿起相同的cookies並且工作嗎?

回答

1

AndroidAsync庫我寫的自動處理,它會在後臺運行,並重新調用到UI線程:

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); 
    } 
});