我想在使用Web服務的應用程序中進行登錄活動。提出請求的最佳做法是什麼?IntentService vs AsyncTask登錄活動?
我應該使用IntentService還是應該使用AsynkTask類並覆蓋它的方法?
我想在使用Web服務的應用程序中進行登錄活動。提出請求的最佳做法是什麼?IntentService vs AsyncTask登錄活動?
我應該使用IntentService還是應該使用AsynkTask類並覆蓋它的方法?
使用AsyncTask
將有助於使你的代碼,你的情況更簡單。 在這種情況下,你將只使用一個類到另一個類。在這種情況下,您可以以最簡單的方式傳輸數據。
在第二種情況 - intentservice - 你必須寫/讀/收集/提取數據,時間滯後等。
編輯 1.您可以取消請求旋轉 2之前,您可以檢查您的請求正在進行,不要再啓動它。 3.您可以在登錄屏幕中禁用旋轉。
是的,但是如果我旋轉我的屏幕,然後再次撥打電話...... –
@MateutAlin即使您旋轉屏幕意圖服務也再次調用。你必須檢查當前數據是否適合你。在請求之前。 –
@MateutAlin閱讀我更新的答案 – Vyacheslav
您應該使用Aysnc任務,因爲IntentService在後臺運行,因此必須在網絡呼叫響應後更新UI。
因此,異步任務對您的情況更好。
IntentService我們用於長時間的後臺運行任務,它會在完成工作後自行終止它。
AsyncTask只是在類中運行異步操作。
IntentService運行新服務並執行所需的操作。
這將是更容易使用的AsyncTask,因爲你可以使用它你的活動中,你可以運行它的意圖,目標活動(registrer,用戶區等)。
如果您使用IntentService,則必須創建綁定器,收集數據,監視它等等。爲此目的,IntentService將比它值得的工作多得多。
如果您使用IntentService
,則必須實現活頁夾才能與UI進行通信,而AsyncTask
則提供了用於更新UI的回調。
然而,AsyncTask
有它開始每天調用活動啓動時的缺點。因此,要處理此問題,您可以使用AsyncTaskLoader
,它爲您的後臺工作提供AsyncTask
並處理其狀態,以避免通過配置更改再次啓動它。
Android開發教程對如何使用AsyncTaskLoader
一個很好的例子。你可以找到它here。
它是什麼樣的webservice? –
對於小時間Web服務使用'AsncTask'。 –
@jiteshmohite是一個Java SOAP ws –