【问题标题】:Advanced task killer dont' kill correctly my app高级任务杀手不会正确杀死我的应用程序
【发布时间】:2024-01-29 11:10:02
【问题描述】:

我已经创建了一个 Android 应用程序(功能性)。

我的问题是当人们使用高级任务杀手(什么没用)时,我的所有变量都被擦除了,但应用程序并没有完全杀死,它再次启动但它错过了所有数据。我希望该应用程序完全杀死并完全重新启动。

有人有想法吗?

【问题讨论】:

    标签: android task kill


    【解决方案1】:

    您为什么不修改处理这些情况的应用程序,方法是保存所有数据并在方法onSaveInstanceStateonRestoreInstanceState 中恢复它?

    编辑:

    @Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
      super.onSaveInstanceState(savedInstanceState);
      // Save UI state changes to the savedInstanceState.
      // This bundle will be passed to onCreate if the process is
      // killed and restarted.
      savedInstanceState.putBoolean("MyBoolean", true);
      savedInstanceState.putDouble("myDouble", 1.9);
      savedInstanceState.putInt("MyInt", 1);
      savedInstanceState.putString("MyString", "Welcome back to Android");
      // etc.
    }
    
    @Override
    public void onRestoreInstanceState(Bundle savedInstanceState) {
      super.onRestoreInstanceState(savedInstanceState);
      // Restore UI state from the savedInstanceState.
      // This bundle has also been passed to onCreate.
      boolean myBoolean = savedInstanceState.getBoolean("MyBoolean");
      double myDouble = savedInstanceState.getDouble("myDouble");
      int myInt = savedInstanceState.getInt("MyInt");
      String myString = savedInstanceState.getString("MyString");
    }
    

    【讨论】:

    • 是的,我可以,但我将所有数据保存在哪里?
    • 谢谢你的回答,我会努力的
    最近更新 更多