我的客戶希望他們的應用程序在應用程序啓動時或從睡眠中喚醒時始終顯示「警告」屏幕。我試圖創造我的主人活性的onResume()事件(每一個其他活動所繼承),但這會導致一個死循環:Android onResume from應用程序
- 活動被調用時,onResume()被解僱
- 警示屏火災,引起調用活動被暫停
- 用戶點擊OK接受消息時,用戶返回到先前屏幕
- 活性被喚醒
- 轉到1
即使我可以繞過無限循環,警報屏幕也會在新的活動加載時觸發。這就是我喜歡稱之爲壞事的原因。
有沒有辦法模仿onResume()事件,但在應用程序級別而不是在活動級別,這樣我可以避免這些情況,但仍然有應用程序喚醒時彈出警告?
謝謝......我改變onResume爲(1)檢索lastWarnedPref全局變量(lastTime),(2)獲取當前時間(currentTime),(3) )將currentTime寫入lastWarnedPref global(所以只要它們在活動中移動,它就不會出錯),並且(4)檢查currentTime和lastTime之間的差異。我讓它坐了幾分鐘,然後重新啓動應用程序,我得到了我的警告消息。然後,我立即退出並重新啓動應用程序,並沒有收到警告消息。這不完全是他們想要的,但它可能是他們得到的,除非我能找到更好的東西。 –
噢,我還結束了添加一個onDestroy覆蓋,以清除退出時lastWarnedPref的值,以便它在離開應用程序並返回時顯示警告(這是我的客戶想要的)。再次感謝你,很好的回答。 –