我正在編寫一個android應用程序,其中我有1 按鈕和1 進度條作爲UI元素。我的應用程序的用戶界面被掛起
這個應用程序的主要目的是,當用戶按下這個按鈕,它創建一個包含在自定義格式的所有電話簿聯繫人數據庫,意味着我讀聯繫人數據庫,並操縱了我的要求。
因此,我正在使用SQLiteOpenHelper進行數據庫操作。我寫了一個方法下載電話簿()執行所有必需的操作。我寫了一個應用程序,當用戶按下按鈕時,我正在使進度條可見並調用此方法。
在這種情況下,UI點擊按鈕和顯示用力關閉和一個對話框等待按鈕,15秒後後懸掛。
爲了避免這種情況,我嘗試了以下機制。
- >廣播按鈕點擊消息,並且呼叫的方法downloadPhonebook()。這裏沒有用,發生同樣的問題。
- >使用一個線程和AsyncTask來調用這個方法,在這裏我得到了運行時異常,如無法在一個線程內創建Handler,Looper.prepare不叫。我試着調用Looper.prepare()和Looper.loop(),甚至發生異常。
- >我試圖與Android服務和廣播的意圖,又同樣的問題UI忌用。
如果有人遇到這個問題,或者知道溶液或知道如何使用Looper.prepare和Looper.loop請回復我。謝謝。
您可以發佈您的代碼? – Araw