現在、通知が表示されると通知バーにも表示されるアクティビティがあります。
これは、ユーザーがホームを押してアクティビティがバックグラウンドにプッシュされたときに、通知を介してアクティビティに戻ることができるようにするためです。
ユーザーが戻るボタンを押すと問題が発生し、私のアクティビティは破棄されますが、ユーザーが戻るボタンを押しても、通知を介してアクティビティにアクセスできるようにしたいので、通知は残ります。しかし、ユーザーがこれを試みると、古いアクティビティを戻すのではなく、新しいアクティビティを開始しようとして、Null ポインターが表示されます。
基本的に、戻るボタンをホームボタンとまったく同じように動作させたいのですが、これまでに試した方法は次のとおりです。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (Integer.parseInt(android.os.Build.VERSION.SDK) < 5
&& keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
Log.d("CDA", "onKeyDown Called");
onBackPressed();
}
return super.onKeyDown(keyCode, event);
}
public void onBackPressed() {
Log.d("CDA", "onBackPressed Called");
Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
return;
}
ただし、上記のコードではまだアクティビティを破棄できるようです。戻るボタンが押されたときにアクティビティが破棄されないようにするにはどうすればよいですか?