2011-07-25 125 views
2

我有一個應用程序與超過4個活動,但當有人想要退出應用程序,他再次獲得所有的活動。 現在我試圖使用退出代碼:如何殺死一個應用程序?

this.finish() 
android.os.Process.killProcess(android.os.Process.myPid()) 

但沒有什麼幫助了我,所以我的問題是,是否有一種方式來殺死所有的活動在同一時間,就像一個任務殺手?

編輯:

,我找到了我自己:

當您啓動第二個活動,完成()立即第一個:

startActivity(new Intent(...)); 
finish(); 
+1

你想什麼時候它被殺死?聽起來您希望應用程序在用戶按下「返回」時關閉,而是通過之前的活動進行。如果是這種情況,只需在啓動一個新的Activity時調用所有Activities的'finish()'。實現退出按鈕或停用按鈕與操作系統無法良好配合。 – LeffelMania

+0

可能的重複http://stackoverflow.com/questions/2042222/android-close-application – jamapag

+1

你最終建議的不是真的在做你所問的。它只是完成以前的活動,所以你不能回去。您可以通過在清單文件中將「No History」設置爲true來完成同樣的事情。 – DeeV

回答

1

不System.exit(0 )做詭計?

+0

不,應用程序會爲您帶來最後一次活動,並再次返回上一次活動,並且一次又一次地退出應用程序,就像您按下後退按鈕 – Gaauwe

+0

我已經找到它了,請參閱我的編輯 – Gaauwe

0

嘗試getParent().finish()在哪裏你趕上後退按鈕; getParent()返回調用當前活動的活動。如果你完成了父母,你完成了孩子。此外,您可以開始結果活動,然後在要測試的意向數據中傳遞一些內容,並逐個完成每個活動。我不確定這是否是最好的工作解決方案。

+0

我已經發現它,看我的編輯 – Gaauwe