[英]How to cancel a countdown timer when a notification is clicked?
我知道在其他論壇上已經有人問過這個問題了,但我還沒有一個完美的答案。 這是我的要求:
當活動結束時,計時器開始計時,並在10秒鍾后顯示通知。 如果10秒鍾后用戶未單擊通知,則通知會更改。 當用戶單擊第一個通知時,將顯示最后查看的屏幕-即活動進入前台。 這可以通過以下方法實現:
Intent notificationIntent = new Intent(TimedAlert.this, FirstActivity.class);
notificationIntent.setAction(Intent.ACTION_MAIN);
notificationIntent.addCategory(Intent.CATEGORY_LAUNCHER);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
但我希望計時器在活動進入前台后立即停止。 即在onResume ()
我給定timer.cancel()
但這似乎不起作用。 我也嘗試過onNewIntent()
但是只有當我從第二個活動轉到后台時,它才在第一個活動中起作用。 在前台,不會調用onNewIntent()
方法,即使我為第二個活動指定了單個頂部。
我該如何實現這種行為?
當用戶單擊Notification
,系統將調用您的notificationIntent
,在這種情況下,系統將啟動FirstActivity
,然后在FirstActivity
可以停止倒計時。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.