Android Http庫:Netroid
簡介:
Netroid是一個基于Volley 實現的Android Http庫。提供執行網絡請求、緩存返回結果、批量圖片加載、大文件斷點下載的常見Http交互功能。致力于避免每個項目重復開發基礎Http功能,實現顯著地縮短開發周期的愿景。
實現原理:
Netroid自啟動后創建由開發者指定的線程數目,每個線程由 BlockingQueue 進行阻塞。當有新的請求進入隊列時,其中一個線程將被喚醒并獲得請求對象, 然后開始執行,執行完成后線程重新回到阻塞狀態,等待下一次喚醒。Netroid實現了強大的狀態回調接口在請求執行過程中進行通知, 包括開始、完成、成功、重試、失敗、取消、執行網絡操作、應用緩存、下載進度九種狀態回調,開發者可方便地獲取請求的執行情況,對用戶進行友好提醒。
注:Netroid的線程池不具備伸縮功能,創建后所有線程均處于啟用狀態,不支持動態調整。
文檔組成:
快速實現將Netroid集成到應用中。
了解Netroid在應用中的典型代碼寫法。
Netroid中的各種內部組件及其使用方法的詳細解釋。
了解請求執行類的細節,定制請求處理方式,各種請求場景的實現方法。
了解圖片加載器的功能點及其使用方法。
了解Netroid提供的文件斷點下載組件的功能。
了解Netroid所有接口的細節。
也可直接點擊下載演示程序查看運行效果。
示例:
String url = "http://server.domain/string.do"; StringRequest request = new StringRequest(Request.Method.GET, url, new Listener<String>() { @Override public void onSuccess(String response) { Toast.makeText(Activity.this, "response : " + response, 2000).show(); } @Override public void onError(NetroidError error) { Toast.makeText(Activity.this, "error occurred : " + error.getMessage(), 2000).show(); } }); // 設置請求Header request.addHeader("Accept-Encoding", "gzip, deflate"); RequestQueue.add(request);
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!