簡體   English   中英

單擊通知時如何取消倒數計時器?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM