Unity项目的关闭程序运行以及Application前后台切换调用关系
关闭程序/停止运行
/// <summary>
/// 退出程序
/// </summary>
public static void QuitProcedure()
{
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#else
Application.Quit();
#endif
}
编辑器模式下停止程序运行
UnityEditor.EditorApplication.isPlaying = false;
用于编辑器模式下,通过代码不点击停止播放键也一样能够控制程序停止运行。
其他平台的结束并退出程序
Application.Quit();
用于其他平台结束并退出程序
Application前后台切换调用关系
private void OnApplicationFocus(bool focus){}
private void OnApplicationPause(bool pause){}
private void OnApplicationQuit(){}
- 正常进:
OnApplicationFocus
, isFocus=True - 正常退:
OnApplicationQuit
- Home出:
OnApplicationPause
, isPause=True
OnApplicationFocus
, isFocus=False - Home进:
OnApplicationPause
, isPause=False
OnApplicationFocus
, _isFocus=True
- Kill进程:
- 当前应用双击Home,然后Kill:
OnApplicationQuit
(IOS有回调,android没回调) - 跳出当前应用,然后Kill:
OnApplicationQuit
(IOS和Android都没回调)
- 当前应用双击Home,然后Kill:
原文链接:https://blog.csdn.net/aa4790139/article/details/48087877