2012-08-28 130 views
0

我開始在我的應用程序的第一個屏幕上的計時器。問題來自手機進入睡眠狀態。 Timer觸發的動作無法訪問網絡並導致應用程序崩潰。 我的解決方案是當手機進入睡眠狀態時停止/重新啓動計時器。睡眠計時器,當電話睡

那麼是否有任何方法可以像Application類中的onLowMemory()或onTerminate()那樣實現。 onSleep()和onWake()會很好:)

謝謝。

回答

0

在您的第一個屏幕的Activity代碼中,您可以覆蓋onStop或並取消您的計時器。選擇最適合您的用途。

當您調用onResumeonStart時,您可以重新啓動計時器。

+0

即使我處於不同的活動狀態,此項工作是否也能正常工作?或者我必須重寫每個Activity的onResume/start。 – Sam

+0

你可以創建一個靜態定時器,你可以通過'Application'上下文來訪問它。如果你只在第一個屏幕上有計時器,那麼我猜想這是你唯一需要做的事情。 – ScouseChris

+0

好吧,我會去靜態路線。感謝您的快速回答。 – Sam