2012-08-12 43 views
0

在服務和活動之間傳遞大量數據時,我應該擔心電池/ CPU的消耗嗎? 假設我可以更努力地避免不必要的消息傳遞,通過持有對數據的引用,而不是要求服務再次廣播它,這是更好的做法嗎? 我真的需要應用程序是電池友好。在服務和活動之間傳遞包裹

+0

我該怎麼做,或者我可以使用什麼方法將數據從「服務」傳遞到「活動」(不是連續的,但頻率很高,並且由事件觸發,如「FileObserver」 ), 提前致謝。 – twlkyao 2014-01-13 07:21:56

回答

1

我不能說發生廣播意圖時,發生的確切電池消耗,但我認爲你不應該擔心電池消耗。如果您的服務正在處理/更新有狀態的數據,並且所涉及的活動需要這些更新的值,那麼發送廣播是一條可行的路。如果數據沒有變化,那麼就沒有必要不斷地播放它,這隻會浪費電池。電池流失的主要原因可能是您的服務中發生昂貴的操作。希望優化服務中的工作,而不僅僅是優化工作。只更新需要更新的內容,並嘗試儘可能減少非常耗電的操作,如可能的網絡呼叫。