使用 RoboVM 绑定:https ://github.com/BlueRiverInteractive/robovm-ios-bindings 更具体地说是 Google Play 游戏服务绑定。
我似乎无法编译绑定。收到此错误:
An internal error occurred during: "Launching my-gdx-game-robovm".
No @Marshaler found for parameter 3 of @Bridge method
<org.robovm.bindings.gpgs.GPGLeaderboard: void
objc_loadScoresWithCompletionHandler(org.robovm.bindings.gpgs.GPGLeaderboard,org.robovm.objc.S elector,org.robovm.bindings.gpgs.GPGLeaderboardLoadScoresBlock)>
现在您可以说绑定本身存在错误,但我认为情况并非如此,因为会发生以下情况:
- 如果您直接运行 GPGC 项目(通过运行示例应用程序),它会正确编译并在模拟器上运行。
- 如果您尝试编译引用了 GPGC 项目的整个 libGDX 游戏,则会引发此错误。
- 如果您对 GPGLeaderboard 文件(包含错误的文件)进行更改并尝试直接运行 GPGC 项目,它也会引发此错误。如果你第二次运行它,它会神奇地消失。
为什么会这样?怎么可能修好?
使用最新的 GPGC 绑定和最新的 RoboVM nightlies (2014.01.05)。
谢谢你。
编辑:绑定的作者修复了这个问题(截至 2014.01.07)。