从通知中调用的活动回来的同时如何留在app中?

时间:2017-04-29 02:23:58

标签: android notifications back-button

当我从通知中调用活动时,我会指示此活动是从通知中调用的,因此当用户按下后退按钮时,我确保将他留在应用程序中。

@Override
protected void onDestroy() {

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        if (extras.containsKey(ARG_ACTIVITY_ORIGIN) && extras.getInt(ARG_ACTIVITY_ORIGIN) == CONSTS_APP_GENERAL.ACTIVITY_ORIGIN_NOTIFICATION) {
            Intent i = new Intent(this, MainActivity.class);
            startActivity(i);
        }
        finish();
    }
    super.onDestroy();
}

然而,这种过渡并不顺利。活动关闭,然后屏幕闪烁并将新的(MainActivity)带到前面。

我确信有更好的方法,以标准方式,以达到相同的结果。从通知进入时,如何确保用户留在您的应用上?

1 个答案:

答案 0 :(得分:1)

通过覆盖onBackPressed()并且不调用super.onBackPressed()来捕获后退按钮会更加清晰

这样,应用程序将不会退出,也不必重新启动。