我面临一个相当奇怪的问题,我正在使用 unity 2017.3.1f1 Personal。
当我构建 APK 并将该文件复制到手机并从手机的文件管理器中安装它时,我无法从主菜单切换到第一个场景,游戏在加载场景时崩溃或只是在选择后冻结,我想这是由于异步代码,所以我尝试不使用它并且根本没有结果。
当我选择构建并运行时,这根本不会发生并且应用程序运行正常,我在这里缺少什么或者我该如何解决这个问题?已经多次重启了unity和电脑。
这是我用来在场景之间切换的代码,包括没有异步模式的代码:
public void Car1()
{
selectedCar = 0;
canvasManagerGO.GetComponent<CanvasManager>().Close();
SceneManager.LoadScene("W" + selectedWorld + "-L1", LoadSceneMode.Single);
}
public void Car2()
{
selectedCar = 1;
canvasManagerGO.GetComponent<CanvasManager>().Close();
SceneManager.LoadScene(1, LoadSceneMode.Single);
}
public void Car3()
{
selectedCar = 2;
canvasManagerGO.GetComponent<CanvasManager>().Close();
StartCoroutine(ChangeScene("W" + selectedWorld + "-L1"));
public IEnumerator ChangeScene(string sceneName)
{
loadingCanvas.SetActive(true);
AsyncOperation asyncOperation = SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Single);
while (!asyncOperation.isDone)
{
float progress = Mathf.Clamp01(asyncOperation.progress / .9f);
//Debug.Log(asyncOperation.progress);
slider.value = progress;
yield return null;
}
yield return null;
}
Car 1 和 Car 2 有一个直接模式,没有使用协程来改变场景,它们都不起作用,代码根本没有错误,或者至少控制台没有报告任何内容,我也尝试了不同的构建设置和压缩,也有或没有开发构建来检查分析器,什么都没有,谢谢大家:)