Android 如何覆盖反压以不终止活动?
我想在应用程序第一次打开时显示一些图像。或者如果它被重新打开。我不希望当用户按下返回按钮进入主屏幕时,应用程序被终止。但是,让它保持活动状态,但仍然返回主屏幕Android 如何覆盖反压以不终止活动?,android,Android,我想在应用程序第一次打开时显示一些图像。或者如果它被重新打开。我不希望当用户按下返回按钮进入主屏幕时,应用程序被终止。但是,让它保持活动状态,但仍然返回主屏幕 how to override backpress to not kill activity? 我相信你还没有理解这里的某些事情。当你按下后退按钮时,并不意味着你正在终止你的应用程序。这意味着你正在完成你的活动,也意味着你的应用程序正在后台运行。如果你想停止你的活动,你必须做一个 通过调用System.exit0; 或者 或者手动进入
how to override backpress to not kill activity?
我相信你还没有理解这里的某些事情。当你按下后退按钮时,并不意味着你正在终止你的应用程序。这意味着你正在完成你的活动,也意味着你的应用程序正在后台运行。如果你想停止你的活动,你必须做一个
通过调用System.exit0;
或者
或者手动进入设置->管理应用程序->选择应用程序->单击强制停止
当你按home键时,意味着你的活动被暂停或冻结,当你再次进入应用程序时,你可以看到你的应用程序从离开应用程序的地方恢复。正如Andro_Selva所说,后退按钮完成你的活动;它不会杀死应用程序 如果您想完成类似于按下home(主页)按钮以隐藏应用程序的操作,但活动仍处于活动状态,则可以执行以下操作:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
这和按home键有点不同,因为它只会带你进入你启动此应用时使用的最后一个应用。所以它不一定会把你带回发射器。但这种行为将更接近用户在按下后退时的预期
您可能还希望将其放在根活动下的清单中:
android:alwaysRetainTaskState="true"
这将防止Android默认的行为,即如果你的所有活动闲置了大约半小时,就完成它们。将此添加到你的活动中
public void onBackPressed() {
//finish(); this is what would normally happen
}
这样您就可以完全控制back键。至于家里的钥匙,你最好不要动它。否则,如果你的应用出了问题,用户将无法摆脱,这将是一个大问题。另外,如果你看看android的工作原理,当按下home键时,应用程序不会停止,只是暂停,除非系统确定没有足够的内存来保存你的应用程序,在这种情况下,它将关闭。那么,在设备上单击back press(后退)按钮和home(主页)按钮有什么区别呢???编码器,这有助于阅读
public void onBackPressed() {
//finish(); this is what would normally happen
}