我知道Application.Quit()在編輯器中不起作用,
是的,它不會在編輯器中工作,但你可以在編輯器中使用UnityEditor.EditorApplication.isPlaying
,但你必須包裝它圍繞着UNITY_EDITOR
宏。看下面的例子:
void Quit()
{
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#else
Application.Quit();
#endif
}
我把範圍縮小,似乎Application.Quit()是問題。 我想不通爲什麼,因爲到處都在網絡上,它說在Android
它應該 工作的Application.Quit()
函數應該在Android上工作。如果它不是,那麼這是一個錯誤。
Unity還有另一種解決方法。
下面是其他的解決方法:
。在Awake
函數中將Input.backButtonLeavesApp
設置爲true
。它應該自動當Android上的後退按鈕被按下時退出應用程序。
void Awake()
{
Input.backButtonLeavesApp = true;
}
。如果這不起作用,然後殺死進程:
System.Diagnostics.Process.GetCurrentProcess().Kill();
如果這不起作用,那麼通過編輯器提交bug報告。
也許這可以幫助你:http://answers.unity3d.com/questions/560661/how-do-i-get-inputgetkeydownkeycodeescape-to-regis.html。 「我發現在舊手機上(在薑餅上),GetKey()不起作用 - 然而,Input.GetAxis()(一旦我定義了一個使用菜單或轉義的軸)」-davididev – Greg
1.你把'if(Input.GetKeyDown(KeyCode.Escape))'?您必須縮小問題範圍,確定是否在Android上調用了Input.GetKeyDown,或者如果Application.Quit();是問題所在。 – Programmer
@Programmer我縮小了它,似乎Application.Quit()是問題。我無法弄清楚爲什麼,因爲網絡上的每個地方都說它應該在Android上運行。 –