如何在按下按钮时杀死app

时间:2011-08-18 01:18:28

标签: android

我有一个有很多活动的应用。在“设置”页面中有一个删除帐户按钮,该按钮可以重置所有已保存的变量并退出应用程序。我还没有找到退出应用程序的简单解决方案(例如,调用完成只会破坏当前活动)我按下按钮关闭应用程序的时间是什么(例如,当我重新打开应用程序时,它应该从第一个活动开始)

3 个答案:

答案 0 :(得分:3)

最简单的方法是在侦听特定Intent的所有BroadcastReceiver类中注册Activity。当你想要关闭所有内容时,只需触发匹配的Intent,并在每个Activity调用中的BroadcastReceiver中调用finish

答案 1 :(得分:1)

尝试System.exit(0),虽然您在技术上假设在所有活动中使用finish()。这样做但很快。

答案 2 :(得分:0)

使用此:

Process.killProcess(Process.myPid()); 

或者还有另一种更安全的方法。只需将所有活动子类化,从一个父活动中保留所有活动活动的列表,然后在必要时使用exit()将它们全部关闭:

public class ControlActivity extends Activity     
{     
   private static ArrayList<Activity> activities=new ArrayList<Activity>();      

   @Override     
   public void onCreate(Bundle savedInstanceState)     
   {         
       super.onCreate(savedInstanceState);         
       activities.add(this);     
   }      

   @Override     
   public void onDestroy()     
   {         
       super.onDestroy();         
       activities.remove(this);         
       if(activities.size()==0) //last activity              
           //release resources and so on     
   }   

   //close all activities, when necessary
   public static void exit()
   {
      for(Activity activity:activities)
          activity.finish();
   }
}