我無法在AsyncTask和IntentService上進行調用。 我正在開發一個具有用戶註冊活動的android應用程序。當用戶在註冊活動中輸入用戶名時,我必須通過向服務器發送HTTP請求來檢查用戶名是否已被佔用。來自服務器的響應是帶有用戶名的JSON對象。AyncTask和IntentService何時使用?
請幫我打電話來設計背景用戶名檢查AsyncTask/IntentService的優點和缺點。
我無法在AsyncTask和IntentService上進行調用。 我正在開發一個具有用戶註冊活動的android應用程序。當用戶在註冊活動中輸入用戶名時,我必須通過向服務器發送HTTP請求來檢查用戶名是否已被佔用。來自服務器的響應是帶有用戶名的JSON對象。AyncTask和IntentService何時使用?
請幫我打電話來設計背景用戶名檢查AsyncTask/IntentService的優點和缺點。
如果您使用的是AsyncTask,那麼您在此不需要IntentService。如果你發佈你的代碼,我們可以告訴你你可能做錯了什麼,但是用AsyncTask在一個線程上發出一個HTTP請求是非常簡單的。
這裏有一個如何使用它用於此目的的一個很好的例子: http://androidresearch.wordpress.com/2012/03/17/understanding-asynctask-once-and-forever/
基本上的AsyncTask僅僅是圍繞一個主題,讓您頂嘴顯示線程看中包裝。你可以通過一個線程來獲得完全相同的結果,這個線程可以執行你的HTTP調用,而Runnable
可以更新你的顯示,你的線程可以用Handler
來調用。
從這個有用answer
您應該使用那些 緊密結合的活動,像什麼你目前要做的短重複任務的的AsyncTask。 IntentService更適合於計劃任務(重複或 ),它應該在後臺運行,與您的活動無關。
所以這個建議也與你同行。
除此之外,我會建議你看看到android volley
IntentService和的AsyncTask是沒有可比性呢。
我假設兩者都是異步運行的,對不對?爲什麼不能比較呢? – geekgugi
我在Asyctask上最後添加了一行。當兩者都爲相同的目標而設計時,比較和基準測試的效果會更好。可以說Service vs IntentService或AsyncTask vs AsyncTaskLoader。 – minhaz
你的意思是說使用AsyncTask/Service可以實現的目標無法通過計數器部分實現嗎? – geekgugi