iOS 使用 Firebase 5 的 GeoFire

GeoFire on iOS with Firebase 5

从 Firebase 4.x 到 Firebase 5.0.0 的更新破坏了我的 GeoFire 安装。我像这样通过 "Podfile" 安装 GeoFire:

pod 'GeoFire', :git => 'https://github.com/firebase/geofire-objc.git'

我现在收到此错误消息:

[!] CocoaPods could not find compatible versions for pod "Firebase/Database": In Podfile: Firebase/Database

GeoFire (from https://github.com/firebase/geofire-objc.git) was resolved to 2.0.1, which depends on Firebase/Database (~> 4.0) Specs satisfying the Firebase/Database, Firebase/Database (~> 4.0) dependency were found, but they required a higher minimum deployment target.

Podfile 和 Xcode 项目中的部署目标是 iOS 11。所以确实没有更高的最低部署目标。

在本地克隆存储库并将安装更改为

pod 'GeoFire', :path => '/Users/georg/Projekte/Repos/geofire-objc'

提高对 Firebase 5.0 的依赖似乎也不起作用,因为我现在收到错误消息

[!] The 'Pods-poifinder' target has transitive dependencies that include static frameworks: (FirebaseDatabase, FirebaseCore, FirebaseAuth, FirebaseFirestore, FirebaseFunctions, and FirebaseStorage)

Firebase 已切换到 v5.0.0 的源 pods,这可能是对此的解释。

我现在的问题是:如何让 GeoFire 在 Swift 4.1 项目中与 Firebase 5.0 一起工作。谢谢!

在存储库中修复此问题之前,您可以使用此解决方法:

  1. 在本地克隆存储库
  2. 像这样编辑您的 podfile 并指向本地存储库

    pod 'GeoFire', :path => '/Users/hans/repos/geofire-objc'

  3. 在本地存储库的 "GeoFire.podspec" 中像这样编辑依赖项

    s.ios.dependency 'Firebase/Database', '~> 5.0'

  4. 将此行添加到 "GeoFire.podspec":

    s.static_framework = 真

  5. 运行

    广告连播更新