2011-08-10 140 views
0

我目前正在開發一個應用程序,該應用程序執行一些不能被打斷的重度處理。我想知道是否有辦法阻止用戶啓動另一項活動。Android防止活動失去焦點

一些關於活動:

- 它有一個線程從UI線程做處理 - 它具有喚醒鎖定,因此屏幕不睡覺 - 它有一個進度對話框是分開警告用戶不要中斷處理

另一個需要注意的是,應用程序確實檢測應用程序何時失去焦點並註銷,這是一種安全措施。我試圖決定天氣應用程序應該試圖「優雅地」停止線程(涉及很多工作,可能會不可思議)或者嘗試我所問的。

在此先感謝!

+0

不,你不能完全限制用戶,因爲當有一個後臺線程運行你的用戶也可能會收到一個電話!所以這取決於...你能讓我們知道你的後臺線程究竟做了什麼嗎?它是否會直接更新數據庫? – doNotCheckMyBlog

回答

0

沒有可能確保另一項活動無法開始。 對於非常長的後臺處理,您應該使用用戶服務。在某些情況下,您還可以考慮將此服務設置爲「前景」。看看android的參考例子。