В настоящее время у меня есть действие, при котором уведомление отображается также на панели уведомлений.
Это так, что когда пользователь нажимает на кнопку домой, а действие переходит в фоновый режим, они могут вернуться к действию через уведомление.
Проблема возникает, когда пользователь нажимает кнопку «Назад», моя активность уничтожается, но уведомление остается, поскольку я хочу, чтобы пользователь мог нажимать назад, но при этом получать доступ к активности через уведомление. Но когда ПОЛЬЗОВАТЕЛЬ пытается это сделать, я получаю Null Pointers, поскольку он пытается начать новую деятельность, а не возвращать старую.
Итак, я хочу, чтобы кнопка «Назад» действовала точно так же, как кнопка «Домой», и вот как я пытался это сделать:
@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;
}
Однако приведенный выше код по-прежнему позволяет уничтожить мою активность. Как я могу остановить уничтожение моей активности при нажатии кнопки «Назад»?