java - libGDX iOS 应用程序在调用 creat() 后崩溃

标签 java android ios libgdx robovm

我使用 libGDX 创建了一个游戏应用程序,它在我的桌面、Android 模拟器和我的 Android 设备上成功运行,但是,当尝试将其作为 iOS 模拟器应用程序启动时,我收到以下错误:

[WARN] android.System: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks. [WARN] android.System: java.lang.Throwable: Explicit termination method 'close' not called at dalvik.system.CloseGuard.open(CloseGuard.java) at java.io.RandomAccessFile.(RandomAccessFile.java) at java.io.RandomAccessFile.(RandomAccessFile.java) at java.util.zip.ZipFile.(ZipFile.java) at java.util.zip.ZipFile.(ZipFile.java) at java.lang.PathClassLoader.init(PathClassLoader.java) at java.lang.PathClassLoader.findResource(PathClassLoader.java) at java.lang.ClassLoader.getResource(ClassLoader.java) at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java) at java.lang.Class.getResourceAsStream(Class.java) at com.badlogic.gdx.files.FileHandle.read(FileHandle.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.appsandsmiles.MammiMammiGameHelpers.AssetLoader.load(AssetLoader.java) at com.appsandsmiles.MammiMammi.MammiMammiGame.create(MammiMammiGame.java) at com.badlogic.gdx.backends.iosrobovm.IOSGraphics.draw(IOSGraphics.java) at com.badlogic.gdx.backends.iosrobovm.IOSGraphics$1.draw(IOSGraphics.java) at org.robovm.apple.uikit.UIView.$cb$drawRect$(UIView.java) at org.robovm.apple.uikit.UIApplication.main(Native Method) at org.robovm.apple.uikit.UIApplication.main(UIApplication.java) at com.appsandsmiles.MammiMammi.IOSLauncher.main(IOSLauncher.java)

和:

com.badlogic.gdx.utils.GdxRuntimeException: File not found: data/spritesheet.atlas (Internal) at com.badlogic.gdx.files.FileHandle.read(FileHandle.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java) at com.appsandsmiles.MammiMammiGameHelpers.AssetLoader.load(AssetLoader.java) at com.appsandsmiles.MammiMammi.MammiMammiGame.create(MammiMammiGame.java) at com.badlogic.gdx.backends.iosrobovm.IOSGraphics.draw(IOSGraphics.java) at com.badlogic.gdx.backends.iosrobovm.IOSGraphics$1.draw(IOSGraphics.java) at org.robovm.apple.uikit.UIView.$cb$drawRect$(UIView.java) at org.robovm.apple.uikit.UIApplication.main(Native Method) at org.robovm.apple.uikit.UIApplication.main(UIApplication.java) at com.appsandsmiles.MammiMammi.IOSLauncher.main(IOSLauncher.java)

我尝试创建一个 Hallo Word 项目来检查它是否在 iOS 模拟器上运行,结果确实如此,我猜问题出在代码中的某个地方,但正如我在开头提到的,该应用程序确实可以在 Android 设备上运行并在桌面上。

最佳答案

通过查看第二个日志 block ,您似乎没有在正确的位置放置“data/spritesheet.atlas”,或者您的 ios 项目没有从 android 项目“Assets”获取其资源文件夹。

如果日志中提到的“Data”文件夹指的是 ios 项目的“Data”文件夹,您可能应该将图形移动到 android 项目中的“Data/Assets”文件夹。

关于java - libGDX iOS 应用程序在调用 creat() 后崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145507/

相关文章:

android - 为什么显示错误权限仅授予android list 中的系统应用程序

iphone - 未找到存档文件

java - REGEX:从被许多可选组包围的特定组获取信息

java - LIBGDX 不断向终端打印 "DefaultShaderProvider: Creating new shader"

java - 使用 Java 将 unix 纪元转换为人类可读时的日期不正确

android - 使用本地移动库调用 Dart

java - 在 Java 中匹配 2 个问答游戏的问题和答案的数组列表

java - java中有没有用于单位转换的库?

iphone - 警报式 iOS 通知(如消息)导致实时 Game Center 匹配停止接收消息

iphone - 如何在 Objective-C 中获取当前周数?