在应用程序退出之前发送到所有游戏对象。
在编辑器中,Unity 在停止播放模式时调用此消息。
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void OnApplicationQuit() { Debug.Log("Application ending after " + Time.time + " seconds"); } }
注意:iOS 应用程序通常会被挂起,而不是退出。对于 iOS 构建,请在播放器设置中启用“Exit on Suspend
”属性以使应用程序退出而不是挂起,否则您可能看不到此调用。如果您未启用“Exit on Suspend
”属性,则会看到对 OnApplicationPause 的调用。
在 Windows 应用商店应用和 Windows Phone 8.1 上,没有应用程序退出事件。当 focusStatus 等于 false
时,请使用 OnApplicationFocus 事件。
在 WebGL 中,由于浏览器选项卡关闭的方式,无法实现 OnApplicationQuit。有关解决方法,请参阅 Unity 用户手册中关于 在 WebGL 中与浏览器脚本交互 的文档。
警告:如果用户在移动平台上挂起您的应用程序,操作系统可能会退出该应用程序以释放资源。在这种情况下,根据操作系统的不同,Unity 可能无法调用此方法。在移动平台上,最佳实践是不依赖此方法来保存应用程序的状态。相反,将每次应用程序失去焦点都视为应用程序退出,并使用 MonoBehaviour.OnApplicationFocus 保存任何数据。