尝试使用RoboVM将我的LibGDX游戏移植到iOS。
运行模拟器的应用程序时出现此错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError:
at com.badlogic.gdx.backends.iosrobovm.IOSGLES20.init(Native Method)
at com.badlogic.gdx.backends.iosrobovm.IOSGLES20.<init>(IOSGLES20.java)
at com.badlogic.gdx.backends.iosrobovm.IOSApplication.didFinishLaunching(IOSApplication.java)
at com.badlogic.gdx.backends.iosrobovm.IOSApplication$Delegate.didFinishLaunching(IOSApplication.java)
at org.robovm.cocoatouch.uikit.UIApplicationDelegate$Callbacks.didFinishLaunching(UIApplicationDelegate.java)
at org.robovm.cocoatouch.uikit.UIApplication.UIApplicationMain(Native Method)
at org.robovm.cocoatouch.uikit.UIApplication.main(UIApplication.java)
at ***********
答案 0 :(得分:6)
好的,听起来你可能已经升级到了libGDX 1.6.1 +
在主build.gradle文件中查找如下所示的行:
natives "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
如果您有这样的行,请将其更改为阅读(将natives
更改为compile
):
compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"
compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
看看是否能解决问题。
我刚刚经历了几个小时没有意识到我在更新到更新的libGDX时错过了一个步骤,并且roboVM不再包含作为ipa构建的一部分的垃圾箱,因为它们现在打包为JAR&#39; s通过编译被吸入。 (在这些robovm.xml中不再有lib条目)
答案 1 :(得分:0)
如果你有这个问题,我就是这样解决的:我在一个较旧的论坛上接受了某人的建议: - 从主项目中保存您的课程 - 删除整个项目 -rebuild使用LibGDX UI Setup从头开始 - 在主项目中复制你的课程。
正如那个家伙所说,在你错过的地方总会有一些非常小的故障。
我浪费了3-4个小时,然后我接受了建议,一切都像魅力一样:)