我必須從我的Android應用程序調用一個Web服務,我必須發佈一些參數,然後服務器將開始其操作。此操作大約需要10分鐘才能完成。長時間運行的Web服務調用
處理這種情況的最佳方法是什麼?
如何處理這10分鐘的用戶界面? 在這種情況下會正常工作AsyncTask
嗎?或者我需要採取其他方法?
是否有任何庫可用於這些場景?
在此先感謝。
我必須從我的Android應用程序調用一個Web服務,我必須發佈一些參數,然後服務器將開始其操作。此操作大約需要10分鐘才能完成。長時間運行的Web服務調用
處理這種情況的最佳方法是什麼?
如何處理這10分鐘的用戶界面? 在這種情況下會正常工作AsyncTask
嗎?或者我需要採取其他方法?
是否有任何庫可用於這些場景?
在此先感謝。
您可以在AsyncTask工作時顯示進度對話框,但這不是一個好方法。
另一種方式,創建後臺服務來處理任務。
https://developer.android.com/training/run-background-service/create-service.html
長時間運行的任務添加後臺服務。得到迴應後;更新UI或將其緩存以供將來使用。
編譯 'com.android.volley:凌空:1.0.0' 排球 - >http://www.androidhive.info/2014/05/android-working-with-volley-library-1/
您應該使用服務的長時間運行的後臺任務。使用WeakReference <>以避免內存泄漏
您也可以使用GCM來做到這一點。一旦服務器將完成其工作,它會通知您通知。 –
使用服務來完成您的任務。 –