onBackPressed()但是Activity finish(),然后是onCreate(),onResume()。无法退出应用

时间:2015-09-23 11:24:16

标签: android

Android 2.3.6
 重现步骤。  转到活动。
 重启电话。  单击后退按钮。  什么都没发生。实际上活动再次重新创建,然后恢复调用()所以无法退出应用程序。它只是继续。  什么可能导致这一点。我已将该应用选为默认应用启动器,因此可能与此有关。

问题是这怎么可能不关闭活动?我正在做背压,我也在做完()。我在onResume()中有日志语句,所以我不认为它正在重新启动。什么是重启电话这样做。它起作用了。

 @Override
 public void onBackPressed() {
        super.onBackPressed();
        finish();


    }
}

更新:会立即重新创建活动。 onCreate(),onResume()。所以活动停止了,但由于某种原因它不会离开。以下是清单中的活动意图过滤器:

       <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.HOME" />
        </intent-filter>

有什么能阻止我退出应用吗?

2 个答案:

答案 0 :(得分:0)

尝试以下代码,希望它可以帮助您。

ActivityCompat.finishAffinity(Youractivity.this);
finish();

答案 1 :(得分:0)

请尝试以下代码,希望它能为您效劳

/**
     * This method is use to handle back key event
     */
    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if (keyCode == KeyEvent.KEYCODE_BACK)
        {
            finish();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }