我想知道当用户按下主页按钮时如何退出应用程序。
据我所知,Home Button 在后台移动正在运行的应用程序并将 Launcher 进程放在前面。
我知道我可以使用 finish() 但我不知道应该在哪里调用它,因为我不知道当用户按下 Home 键时哪个函数会被调用。
谢谢。
我想知道当用户按下主页按钮时如何退出应用程序。
据我所知,Home Button 在后台移动正在运行的应用程序并将 Launcher 进程放在前面。
我知道我可以使用 finish() 但我不知道应该在哪里调用它,因为我不知道当用户按下 Home 键时哪个函数会被调用。
谢谢。
根据您想要做什么,覆盖onUserLeaveHint
可能是最好的选择:
http://developer.android.com/reference/android/app/Activity.html#onUserLeaveHint ()
这将使您的应用知道您的应用正在退出,因为用户选择了切换应用(例如通过点击主页按钮或选择通知)。如果来电(或类似的)导致您的应用程序进入后台,则不会调用此提示功能,因为用户没有启动该操作。
就我而言,
我在应用程序中有很多活动,所以如果我使用“onUserLeaveHint”、“onStop”或......
它只是捕捉活动转换。
所以我把每个活动的代码放在下面。最后捕捉用户的主页按钮动作。
首先,你有单例对象
public class ActivityContext {
public static Context context = null;
}
以及每一项活动,
@Override
protected void onStop(){ //onStop runs after New one's onResume
super.onStop();
if(ActivityContext.context==context) { //user home button out
AppStartEnd.sendAppEndData(context);
}
}
@Override
protected void onResume(){
super.onResume();
ActivityContext.context = YourActivity.this;
}
我希望这能帮到您