libgdx firebase robovm绑定

时间:2019-04-24 15:26:57

标签: java firebase gradle libgdx robovm

我正在尝试将Firebase Messaging和Google Mobile Ads框架导入到我的游戏中,该框架是用LibGDX开发的,并通过RoboVM桥接到iOS。



当我仅尝试导入Firebase Messaging时,它需要FirebaseCore,然后需要另一个框架,直到最新的SDK(5.20.2)中不存在FirebaseNanoPB。

  //robovm.xml
  <frameworkPaths>
        <path>libs</path>
    </frameworkPaths>
  <libs>
      <lib>z</lib>   
  </libs>
  <frameworks>
    <framework>UIKit</framework>
    <framework>OpenGLES</framework>
    <framework>QuartzCore</framework>
    <framework>CoreGraphics</framework>
    <framework>OpenAL</framework>
    <framework>AudioToolbox</framework>
    <framework>AVFoundation</framework>
    <framework>CoreMotion</framework>
    <framework>SafariServices</framework>

    <framework>FirebaseMessaging</framework>
    <framework>Protobuf</framework>


    <framework>GoogleToolboxForMac</framework>
    <framework>FirebaseCore</framework>
    <framework>FirebaseCoreDiagnostics</framework>
    <framework>FirebaseInstanceID</framework>
    <framework>FirebaseAnalytics</framework>
    <framework>GoogleMobileAds</framework>
    <framework>nanopb</framework>


  </frameworks>

Here is my project folder in ios package.
这也是我的gradle stacktrace输出。

tform-1.9.9-natives-ios.jar.extracted/META-INF/robovm/ios/libs/libObjectAL.a 
    -framework MobileCoreServices -Xlinker -sdk_version -Xlinker 12.1 -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks

ld: framework not found FirebaseNanoPB
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我实际上不需要导入Firebase Analytics,但是我想它取决于FirebaseCore等...

1 个答案:

答案 0 :(得分:1)

可能您正在使用过时的RoboPods版本。最新的Firebase绑定是5.1.16版,而robopod的版本是2.2.3-SNAPSHOT。 还要从robovm.xml中删除对Firebase框架的所有引用,因为它们是从Robopod本身合并的。
还要在拼写类似的RoboPods GitHub存储库上检查此issue