Привязка Libgdx firebase robovm

#java #firebase #gradle #libgdx #robovm

#java #firebase #gradle #libgdx #robovm

Вопрос:

Я пытаюсь импортировать фреймворки Firebase Messaging и Google Mobile Ads в свою игру, которая разработана в LibGDX и подключена к iOS с помощью RoboVM.

Когда я пытаюсь импортировать только сообщения Firebase, для этого требуется FirebaseCore, затем требуются другие фреймворки, пока FirebaseNanoPB не появится в последней версии SDK (5.20.2).

   //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>
  

Вот папка моего проекта в пакете ios.

Также вот мой вывод 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:

Возможно, вы используете устаревшую версию RoboPods. Последние привязки Firebase — версия 5.1.16, а версия robopod — 2.2.3-SNAPSHOT. Также удалите все ссылки на фреймворки Firebase из robovm.xml , поскольку они объединяются из самого Robopod.
Также проверьте эту проблему в репозитории RoboPods GitHub, который имеет аналогичное написание.