【问题标题】:How can I restart my app when it is clicked on from the recents menu instead of resuming?从最近的菜单中单击而不是恢复时,如何重新启动我的应用程序?
【发布时间】:2015-09-20 18:50:51
【问题描述】:

我正在制作一个游戏,我希望我的应用在最近菜单中被选中时重新启动。因此,如果在游戏中途,玩家按下主页按钮,应用程序将再次重新打开。我之前尝试过,但无济于事。

@Override
public void onResume(){
    super.onResume();

}

@Override
public void onPause(){
    super.onPause();
    onStop();
    onDestroy();
}

我在 onResume() 方法中放了什么?

【问题讨论】:

    标签: android android-lifecycle oncreate onresume


    【解决方案1】:

    我建议你不要做任何特别的事情onPause(),因为在那个回调活动可能对用户仍然可见并且它可能会令人困惑,see docs

    尝试使用onStop()

    @Override
    protected  void onStop(){
        super.onStop();
        finish();
    }
    

    当用户在您的活动的onRestart() 导航回游戏时,您也可以尝试重新创建游戏对象。

    【讨论】:

      【解决方案2】:

      这不是一个理想的解决方案,但您始终可以在该活动上终止应用程序的进程 ID,您希望从头开始启动应用程序,

      但这会破坏你在游戏中的当前进度,所以你可能需要在调用这行代码之前处理它

       android.os.Process.killProcess(Process.myPid());
      

      在你的活动的 onStop() 回调中调用它

      【讨论】:

        【解决方案3】:
        @Override
        public void onPause(){
            super.onPause();
            finish();
        }
        

        【讨论】:

          猜你喜欢
          • 2013-11-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-01
          • 1970-01-01
          • 2022-08-14
          相关资源
          最近更新 更多