我正在尋找一些定時器替代方案,因爲定時器隨應用程序而死,是有限的,並且每個定時器都會啓動自己的線程。有時我需要啓動大約20-30個定時器。Android定時器替代
我需要設置一些事件,及時和顯示應用程序屏幕。可能嗎?
我正在尋找一些定時器替代方案,因爲定時器隨應用程序而死,是有限的,並且每個定時器都會啓動自己的線程。有時我需要啓動大約20-30個定時器。Android定時器替代
我需要設置一些事件,及時和顯示應用程序屏幕。可能嗎?
您應該使用AlarmManager。
由於CommonsWare說它有一些限制,但這沒關係,如果用戶強制關閉你的應用程序,這意味着他不想使用你的應用程序(不再需要或由於內存類型)。 ..
而且我有一個解決方案(但可能不是最好的),因爲如果用戶強制關閉您的應用程序,則無法偵聽,所以一種方式是您可以在應用程序的每次啓動時重新安排事件。我知道這不是一個好的解決方案,但.....我們還沒有任何其他方式
這是good example。
根據您對「與應用程序同時使用」的定義,這可能也可能不可能。
您可以使用AlarmManager
安排PendingIntents
在將來的特定時間調用。那些PendingIntents
可以啓動活動。如果你的應用程序因普通原因「死亡」,這將工作。
但是:
如果通過設置用戶強制關閉您的應用程序,你的報警計劃外,並沒有什麼可以做,以阻止這種(也不您有任何替代AlarmManager
,不知怎的倖存下來)
請允許用戶確定您是否在這些時間顯示活動或籌集Notification
,因爲用戶可能不一定會感激您的遊戲,導航,視頻或電話被您的活動中斷。
我不會向用戶發送垃圾郵件,他可以禁用此功能。當應用程序退出「後退」或電話重新啓動時,AlarmManager會發生什麼情況? – Drake29a
當用戶退出時,它將起作用。但是當重新啓動時這不起作用。你必須重新安排所有事件。 –
我想你應該使用Alarmmanager。 Doc在這裏http://developer.android.com/reference/android/app/AlarmManager.html和教程在這裏http://justcallmebrian.com/?p=129 –
如果你發佈答案我會接受它,雖然兩者的答案讓我滿意。 – Drake29a