Android 操作系统内置了一个用户界面来隐藏和关闭应用程序(请参阅关闭应用),因此您不应该添加自己的界面来退出您的应用程序。用户将 Android 的界面识别为关闭应用程序的方式,因此如果您创建自己的界面,用户将在您的应用程序和其他 Android 应用程序之间获得不一致的用户体验。如果必须以编程方式关闭 Android 应用程序,最佳做法是使用Activity.moveTaskToBack 而不是 Application.Quit。Activity.moveTaskToBack
会暂停应用程序并将其移至后台,这比 Application.Quit
所做的更接近标准的 Android 应用程序生命周期。有关更多信息,请参阅进程和应用生命周期。
以下代码示例演示如何将您的应用程序移至活动堆栈的底部。
using UnityEngine;
public class QuitApplicationUtility
{
public static void MoveAndroidApplicationToBack()
{
AndroidJavaObject activity = new AndroidJavaClass("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject>("currentActivity");
activity.Call<bool>("moveTaskToBack", true);
}
}