android - Unity Android Build - 更改场景出错
问题描述
我面临一个相当奇怪的问题,我正在使用 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 有一个直接模式,没有使用协程来改变场景,它们都不起作用,代码根本没有错误,或者至少控制台没有报告任何内容,我也尝试了不同的构建设置和压缩,也有或没有开发构建来检查分析器,什么都没有,谢谢大家:)
解决方案
我运行了 ADB 调试器,但什么也没找到,应用程序只显示一个空白行,然后就死机了,我什至在我的项目上放了 Lunar 控制台,看到统一没有显示的错误很有帮助,但没有多大帮助任何一个。
我找到的解决方案是在这个视频中https://www.youtube.com/watch?v=OxLa2uPW0dI 我遵循了他使用的“播放器设置 - >其他设置”的确切设置,显然它至少现在解决了这个问题,但是无法指出导致此行为的设置
推荐阅读
- jenkins - 詹金斯:“无法初始化类 org.jenkinsci.plugins.scriptsecurity.sandbox.whitelists.StaticWhitelist”
- python - Python 3 如何打印 lambda 表达式?
- node.js - 如何使用nodejs替换csv文件
- powershell - 从 SharePoint Online 列表中删除所有项目
- google-drive-api - 是否可以使用从服务器端 Oauth2 获取的访问令牌打开谷歌选择器?
- linux - 可以使用 WSL2 构建 LFS
- keycloak - 令牌中的 KeyCloak 组 ID 丢失
- javascript - tf.compat.v1.image.resize 的等效 tensorflow.js 函数?
- r - 如何用spss文件中的data.frames中的标签替换值?
- docker - 授权 docker 容器为 gcp 认证用户