带有RoboVM的iOS的Libgdx – 在IOSGLES20.init处出现不满意的链接错误

尝试使用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 *********** 

好吧,听起来你可能已经升级到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不再将bin作为ipa构build的一部分包含在内,因为它们现在打包成JAR,通过编译进行压缩。 (在这些robovm.xml中没有更多的lib条目)

如果你有这个问题,我就是这么解决的:我从一个老论坛上的人那里得到了一个build议: – 从主项目中保存你的类 – 删除整个项目 – 使用LibGDX UI设置从头开始重build – 拷贝你的类到主要项目。

正如那个家伙说的那样,总是会有一些小小的故障出现在你失踪的地方。

我浪费了3-4个小时,然后我采取了build议,一切都像魅力:)