可以用Threadnew Thread(){
  @Override
  public void run(){synchronized(this)
{
 try
 {
 wait(5000); //5秒
 }
 catch (InterruptedException e)
 {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }
}
finish();  }
  }.start();

解决方案 »

  1.   

    用AlarmManager定时,
    退出应用就参考退出应用的代码了。
    http://blog.csdn.net/forlong401/article/details/7519483
      

  2.   

    开个线程,或者用timer,判断是否finish
      

  3.   


    用AlarmManager好像只能配合Intent使用额?
      

  4.   

    还有,我用exit(0)还是killProcess,怎么都只是结束当前的activity啊??
      

  5.   

    兼容性问题,并不适合于所有版本的,甚至不同手机。解决办法就是在每个Activity里面注册一个相同名称的广播接收机,要退出的话发送广播,所有Activity收到广播后执行finish();
      

  6.   

    我用下面的代码能退出整个应用了。但是又有新问题了。。我再进入的时候是最后退出的页面X_X,怎么会这样子,有人知道怎么办嘛,,,,泪目。
             Intent intent=new Intent(Intent.ACTION_MAIN);
             intent.addCategory(Intent.CATEGORY_HOME);          intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
             startActivity(intent);
             System.exit(0);
      

  7.   

    6楼 ,退出办法挺好,我打算用,2楼的可以实现定时执行某一个函数的 功能,用AlarmManager就是配合intent使用
      

  8.   

    alermmanager 用法
    http://stackoverflow.com/questions/4459058/alarm-manager-example
      

  9.   

    不是啊,我不会的是
    在每个Activity里面注册一个相同名称的广播接收机,要退出的话发送广播,所有Activity收到广播后执行finish();
    这个。。
    怎么给他们发送广播?他们收到广播后怎么执行啊
      

  10.   

    先定义一个intent string  QUIT_APPLICATIONS = "com.test.test";
    然后在每个activity中,
    1. new broadcastreveiver.
    2. filter intent;   
       filter.addAction(QUIT_APPLICATIONS );
       register receiver.
    3.在onReceive中
       if (QUIT_APPLICATIONS .equals(action)) {
           finish();
       }