2013-12-17 58 views
0

我需要檢索大量的XML文件,每個文件都來自不同的Web服務。這些都是連接的,所有的數據最終都會被用於一個對象。我想每個Web服務都有一個類,每個服務都有一個個人AsyncTask來檢索數據,然後按順序發送請求,以便在檢索數據時我開始下一個,直到它們全部完成。從不同的Web服務檢索多個XML文件

我想知道的是,如果有更好的方法來做到這一點,因爲它看起來有點低效。我無法控制這些Web服務,我無法修改或組合它們,只能改變應用程序檢索信息的方式。

任何意見,將不勝感激。謝謝!

回答

0

無需一次發送請求。 AsyncTasks來自Android系統管理的線程池。如果Web服務調用彼此沒有依賴關係,那麼您應該可以同時發送幾個請求。

當然,如果您爲每個Web服務調用使用一個類,則應嘗試將通用邏輯分解爲基類。例如,如果有幾個Web服務是REST,則可能需要考慮處理所有常見HTTP/REST問題的RESTWebService基類。

還可以考慮使用第三方庫進行常見任務。有些可能適用於您的情況是Apache HTTPComponents(用於純HTTP調用),RESTlet(用於其他Web服務),KSoap(如果您有任何SOAP服務)。