android退出應用程序會調用android.os.Process.killProcess(android.os.Process.myPid())或是System.exit(0),這只是針對第一個Activity(也就是入口的Activity)時生效。如果有A,B,C三個Activity,而想在B或C中Activity退出,調用上面的方法,往往會銷毀當前的Activity返回上一個Activity。當然也可以逐個返回上一個Activity,直到跳轉到入口的Activity,最后退出應用程序。但這樣比較麻煩,而且逐個返回的體驗并不友好。
網(wǎng)上比較流行的方法是定義棧,寫一個ExitApplication類,利用單例模式管理Activity,在每個在Activity的onCreate()方法中調用ExitApplication.getInstance().addActivity(this)方法,在退出時調用ExitApplication.getInstance().exit()方法,就可以完全退出應用程序了。
ExitApplication類
代碼如下:
import android.app.Activity;
import android.app.Application;
public class ExitApplication extends Application {
private List activityList = new LinkedList();
private static ExitApplication instance;
private ExitApplication()
{
}
//單例模式中獲取唯一的ExitApplication實例
public static ExitApplication getInstance()
{
if(null == instance)
{
instance = new ExitApplication();
}
return instance;
}
//添加Activity到容器中
public void addActivity(Activity activity)
{
activityList.add(activity);
}
//遍歷所有Activity并finish
public void exit()
{
for(Activity activity:activityList)
{
activity.finish();
}
System.exit(0);
}
}
下面的三個類IndexActivity, BActivity,CActivity是簡單的例子,分別是IndexActivity 主站蜘蛛池模板: 国产精品99久久99久久久二 | 成年人视频在线免费播放 | 天天草天天爱 | 成人一级黄色大片 | 国产激情精品一区二区三区 | 91成人一区二区三区 | 国产免费视频一区二区裸体 | 毛片免费视频播放 | 免费欧美一级视频 | 91 在线免费观看 | 午夜免费一区 | 久久草在线视频免费 | 19禁国产精品福利视频 | 黄色毛片a级 | 欧产日产国产精品v | 最新久久免费视频 | 日韩精品一区二区三区中文 | 无遮挡一级毛片视频 | 欧美黑人伦理 | 欧美精品亚洲人成在线观看 | 成人黄色小视频在线观看 | 久久精品中文字幕一区 | 成人免费区 | 黄色网址在线免费 | 免费一区二区三区 | 亚洲免费视频一区 | 日韩99 | 国产一级毛片av | 91精品国产综合久久婷婷香 | 欧美一级毛片大片免费播放 | 黄色免费大片 | 亚洲免费网站 | 中文字幕伦乱 | 欧美人与禽性xxxxx杂性 | 色中色在线播放 | 99视频观看 | 男人的天堂视频网站 | 成人免费久久网 | 成年人在线视频观看 | 欧美性猛交一区二区三区精品 | 一级毛片在线免费播放 |