android 如何做到完全退出應用程序

當我在網上找“android 如何完全退出應用程序時”十有八九都是

android.os.Process.killProcess(android.os.Process.myPid());
又或者是

System.exit(0);

但這些未必對每一個應用程序都有效果。

當你的應用程序中有很多Activity ,有很多Service,有很多線程,你就不要指望能通過以上方法來完全關閉你的進程了,當然還有其他幾種方法我沒有試,

但是估計都不行。


原因就在於android應用程序的管理機制限制的,包括service在內都是關閉後會在後臺自啓動的。

廢話不多說,解決辦法有兩步

1.看下AndroidManifest.xml裏面註冊的廣播,如果應用程序被kill掉後接受到此類廣播還是會restart的

2.在

android.os.Process.killProcess(android.os.Process.myPid());
後加入如下代碼

		ActivityManager activityMgr= (ActivityManager) getSystemService(ACTIVITY_SERVICE );
					activityMgr.killBackgroundProcesses(getPackageName());

同時AndroidManifest.xml裏面加入權限

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



發佈了44 篇原創文章 · 獲贊 32 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章