2013-07-18 111 views
1

如何關閉我的Android應用程序? 單擊退出按鈕後。 我嘗試了下面的代碼 finish(); System.exit(0); 但它只返回到前一頁。 應該輸入什麼代碼才能進入應用程序菜單Android代碼退出應用程序

+0

你可以找到一些解決辦法。但退出應用程序被認爲是非常糟糕的用戶體驗和[通常皺眉。](http://stackoverflow.com/questions/2033914/quitting-an-application-is-that-frowned-upon) – Krishnabhadra

回答

1

編號Android不允許退出應用程序。但是你可以使用下面的代碼,彈出的主屏幕:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_HOME); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 
+1

謝謝你的Gokul其工作 –

+0

這會否殺死應用程序?我認爲當我們重新啓動應用程序時,它會從停止的地方開始。 – Krishnabhadra

+0

Android的選擇不允許退出應用程序,但它由操作系統管理。 –

1
int pid = android.os.Process.myPid(); 
android.os.Process.killProcess(pid); 

但它是不可取的..

-1

這是不是直接從應用程序退出一個好辦法。你必須先用

youractivity.this.finish(); 

    class A extends Activity 
    { 
     //like in this if u want to go to next activity by clicking a button, then in onClick() you have to write 
    A.this.finish(); 
    } 
-1

第一件事,從Activity Stack取出的每一次活動,這是一個非常不好的做法,以編程方式退出程序。你寧願讓操作系統以正常的方式處理它。

如果你堅持這樣做,你應該這樣做。

  1. 呼叫在您的應用程序的第一個活動,旗 Intent.FLAG_ACTIVITY_CLEAR_TOP,其中完成活動之間目前 屏幕活動和所有。
  2. 現在從第一次活動,請致電finish()

這樣做的好處是,所有的活動生命週期方法都會被調用,並且應用程序以正確的方式清理其資源。

+0

@downvoter關心評論 – Krishnabhadra

-1

finish()將銷燬您稱之爲完成的活動。 所以在你的情況下,你需要調用 android.os.Process.killProcess(android.os.Process.myPid()); 它會殺死所有進程,包括您啓動的堆棧中的所有活動。