android開發兩種退出程式方式(killProcess,System.exit)
阿新 • • 發佈:2019-02-10
KillProcess:
在android中我們如果想要程式的程序結束可以這樣寫:
android.os.Process.killProcess(android.os.Process.myPid());
這樣就可以從作業系統中結束掉當前程式的程序。
注意:android中所有的activity都在主程序中,在Androidmanifest.xml中可以設定成啟動不同程序,Service不是一個單獨的程序也不是一個執行緒。
當你Kill掉當前程式的程序時也就是說整個程式的所有執行緒都會結束,Service也會停止,整個程式完全退出。
System.exit:
當我們在寫java程式時肯定用到過System.exit(0),它的意思是退出JVM(java虛擬機器),在android中一樣可以用,我們可以想像一下虛擬機器都退出了當然執行System.exit的程式會完全退出,記憶體被釋放。
注意:在android手機中檢視當前正在執行的程序時可以發現還可以檢視"後臺快取的程序",你會發現很多退出了的程式還在後臺快取的程序中,如果不要讓程式在後臺快取那麼就可以用System.exit(0);來退出程式了,可以清除後臺快取的本程序。
System.exit(0),System.exit(1)的區別:
引數0和1代表退出的狀態,0表示正常退出,1表示異常退出(只要是非0的都為異常退出),即使不傳0來執行也可以退出,該引數只是通知作業系統該程式是否是正常退出。