我想制作Android应用程序,当应用程序将在主页点击时销毁。所以当应用程序再次启动时,应用程序将从头开始重新启动。不恢复apps``
答案 0 :(得分:1)
@Override
public void onAttachedToWindow()
{
Log.i("TESTE", "onAttachedToWindow");
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
使用此方法,HOME按钮将停止在此活动中工作(仅限此活动)。然后你重新实现,因为这是一个普通的按钮事件(例如后退按钮)。
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_HOME) {
Log.i("TESTE", "BOTAO HOME");
return true;
}
return super.onKeyDown(keyCode, event);
}
答案 1 :(得分:0)
答案 2 :(得分:0)
您可以覆盖onPause并在每次活动暂停时完成应用。这将在不在前台时销毁应用程序。
@Override
public void onPanelClosed(int featureId, Menu menu) {
finish();
super.onPanelClosed(featureId, menu);
}
或者你可以在清单中说,这项活动不应该回归。当不在前台时,这不会破坏应用程序。
<activity
android:name="com.testapp.MainActivity"
android:label="@string/app_name"
android:noHistory="true" >
</activity>
答案 3 :(得分:0)
在主要活动的清单中
android:clearTaskOnLaunch="true"
android:finishOnTaskLaunch="true"
来自clearTaskOnLaunch
http://developer.android.com/guide/topics/manifest/activity-element.html
当值为“true”时,每次用户再次启动任务时,都会 不论它们最后是什么,都会被带到它们的根本活动中 在任务中做,无论他们是否使用Back或Home 按钮离开它。当值为“false”时,可以清除任务 某些情况下的活动(请参阅alwaysRetainTaskState 属性),但并非总是如此。
例如,假设有人从家中启动活动P. 屏幕,从那里去活动Q.用户接下来按Home, 然后返回活动P.通常,用户会看到活动 问:因为这是他们上次在P的任务中做的事情。但是,如果P 将此标志设置为“true”,将所有活动设置在其上(Q在此 当用户按下Home并且任务转到了 背景。因此用户在返回任务时只看到P.