次のコードで通知を開始しました。ボタンでアプリから通知を開始すると開始されますが、同じアプリの「終了」ボタンを押すと通知がクリアされて終了します。
ただし、通知後にアプリを閉じると、PendingIntent を使用して通知でアプリを再度起動します。アプリの「終了」ボタンは通知をクリアしますが、もう一度押さない限りアプリは終了しません。
アプリがどのように開いたかに関係なく、通知をクリアして終了するように開発するにはどうすればよいですか。
このコードの何が問題なのですか?
public void onClick(View v) {
switch (v.getId()) {
case R.id.bStat:
Intent intent = new Intent(this, NotifyActivity.class);
PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);
String body = "This is a Test..";
String title = "XxxXxx Xxxxx..";
Notification n = new Notification(R.drawable.ttsn, body,
System.currentTimeMillis());
n.setLatestEventInfo(this, title, body, pi);
n.defaults = 0;
// Notification.DEFAULT_ALL
nm.notify(uniqueID, n);
break;
case R.id.bExit:
nm.cancel(uniqueID);
finish();
break;
}
}