Android应用安装完成后在应用程序安装器的安装完成页面有“完成"和"打开"两个按钮,点击"打开"后进入app,再按Home键退到桌面,再点击桌面上的app图标会重启app,而不是回到原先退到桌面前的那个页面。
以下方法可解决:
在应用的启动Activity(以下称为LaunchActivity),即设置了
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
的那个Activity的onCreate()方法加以下代码,参考下面:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
finish();
return;
}
setContentView(R.layout.activity1_layout);
//其它业务逻辑代码
}
即可解决问题。
以下称主页面是MainActivity。
调试时发现, 点击桌面上的app图标,出现会重新启动LaunchActivity的情况时,退到桌面前的那个MainActivity仍然在栈中,只是此时会新加入一个新建的LaunchActivity到栈中,所以上述方法可解决这个问题。