怎樣退出終止APP

以下內(nèi)容整理自互聯(lián)網(wǎng),僅用于個(gè)人學(xué)習(xí)


1. 鏈表存儲(chǔ)所有Activity

在Application中定義一個(gè)單例模式的Activity鏈表來(lái)管理所有Activity,退出時(shí),逐個(gè)調(diào)用finish()。

2. ActivityManager

在AndroidManifest.xml添加權(quán)限

<uses permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" ></uses>

退出應(yīng)用時(shí),調(diào)用

ActivityManager am= (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE); 
am.killBackgroundProcesses(this.getPackageName());

3. Dalvik VM的本地方法

android.os.Process.killProcess(android.os.Process.myPid())    //獲取PID  
System.exit(0);   //常規(guī)java標(biāo)準(zhǔn)退出法,返回值為0代表正常退出

4. Activity啟動(dòng)標(biāo)記

Android的窗口類(lèi)提供了歷史棧,我們可以通過(guò)Stack的原理來(lái)巧妙的實(shí)現(xiàn),這里我們?cè)贏窗口打開(kāi)B窗口時(shí)在Intent中直接加入標(biāo)記Intent.FLAG_ACTIVITY_CLEAR_TOP,這樣開(kāi)啟B時(shí)將會(huì)清除該進(jìn)程空間的所有Activity。

在A窗口中使用下面的代碼調(diào)用B窗口:

Intent intent = new Intent();  
intent.setClass(this, B.class);  
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  //注意本行的FLAG設(shè)置  
startActivity(intent);

還可以通過(guò)遞歸退出的方式,在打開(kāi)新的Activity時(shí)使用startActivityForResult()方法來(lái)啟動(dòng),然后自己加標(biāo)記,在退出時(shí)可以遞歸退出。

5. 廣播機(jī)制

新建BaseActivity,所有Activity繼承該Activity。在BaseActivity中注冊(cè)廣播接收器,在onReceive調(diào)用finish()。

6. 強(qiáng)制異常退出

拋出異常使程序Force Close。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.什么是Activity?問(wèn)的不太多,說(shuō)點(diǎn)有深度的 四大組件之一,一般的,一個(gè)用戶交互界面對(duì)應(yīng)一個(gè)activit...
    JoonyLee閱讀 5,869評(píng)論 2 51
  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程,因...
    小菜c閱讀 7,382評(píng)論 0 17
  • 轉(zhuǎn)自 1. 什么是Activity? 四大組件之一,一般的,一個(gè)用戶交互界面對(duì)應(yīng)一個(gè)activity setCon...
    joe1632閱讀 1,466評(píng)論 0 7
  • 【Android Activity】 什么是 Activity? 四大組件之一,通常一個(gè)用戶交互界面對(duì)應(yīng)一個(gè) ac...
    Rtia閱讀 3,945評(píng)論 3 18
  • 5月5號(hào) 晴 郴州 今天是我們這里的立夏節(jié),等孩子放學(xué),回娘家去吃午飯。剛剛在朋友圈看到一篇文章這文章體現(xiàn)了很多...
    馨之芬芳閱讀 448評(píng)論 5 7

友情鏈接更多精彩內(nèi)容