2010-06-23 25 views
1

我在一個正在運行的服務中設置一個處理程序,它每X次執行一次操作。通過extern活動訪問處理程序服務

現在一定時間我要開始從該服務的活動,並在活動的onCreate我想訪問該服務(其啓動acitivty)的處理程序,並阻止它schedualed操作

(mHandler.removeCallbacks(someTask)); 

任何後想法我將如何訪問服務中的處理程序?

服務和被叫活動處於相同的過程。

謝謝,

ray。

+0

我雖然要做一些靜態類,有一個標誌,並通過服務和活動調整該標誌..但這是一個好主意嗎?不是最需要OOP的東西; P – rayman 2010-06-23 08:03:41

回答

0

香港專業教育學院設置在運行的服務 處理這確實操作每隔X 時間。

爲什麼? Service中不需要Handler

如果「每X次」意味着你有一個繁忙的循環,或正在使用TimerTask或其他東西,請考慮是否AlarmManager可能是一個更好的解決方案。

現在一定時間後,我想從該服務

開始 的活動如果在前臺你的一些其他的活動,這是奇怪的,但可以接受。但是,如果您的計劃是在遊戲,電話,短信或任何與您的活動有關的用戶期間中斷用戶,那麼如果您無法證明入侵行爲是正當的,則用戶可能會在Market上給您一個星級評分。

任何想法我將如何訪問處於服務中的處理程序 ?

簡單:擺脫Handler,你不必擔心停止它。 Service中不需要Handler

+0

我需要一個處理程序在我的服務中,因爲我想要調度時間任務。 和我不會打斷任何即將到來的活動的用戶。那不是目的。 「你不必擔心停止我」,爲什麼不呢?我必須阻止它,否則計劃任務將繼續工作(並且我確實需要服務才能在沒有執行任何計劃任務的情況下工作) – rayman 2010-06-27 06:29:42

+0

「擺脫處理程序,您不必擔心停止它。你不需要服務中的處理程序。「 還有什麼呢? – rayman 2010-06-28 06:11:59

+0

我也讀過很多地方最好使用處理程序時間然後TimerTask,任何原因呢?想聽聽你的建議。 – rayman 2010-06-28 06:29:41