Xcode8/Swift 3 更新后缺少 Firebase 标头警告

Posted

技术标签:

【中文标题】Xcode8/Swift 3 更新后缺少 Firebase 标头警告【英文标题】:Missing Firebase headers warnings after Xcode8/Swift 3 update 【发布时间】:2016-09-14 14:47:36 【问题描述】:

我一直收到警告,您可以在将我的应用程序(使用 Firebase、FirebaseAuth、FirebaseData 等)更新到 ios10 和 Swift 3 后在下面看到这些警告。我正在使用 CocoaPods 1.0.x 和 Firebase,我正在使用 @ 987654323@。我能够运行我的项目并且该应用程序运行良好,但我必须摆脱这些警告。问题似乎在于我所有的 Firebase pod 的公共头文件丢失/放错了位置。 GitHub 上有一些未解决的问题,但据我所知,没有什么大问题或与我的问题非常接近。

【问题讨论】:

您是否尝试过 pod deintegrate、pod clean 然后 pod update - 可能只是以前版本遗留了一些错误的引用? @IanBarber 是多次;由于另一个框架,我最终还从项目中删除了所有 pod,并且在再次安装它们后我遇到了同样的问题。它只发生在 Firebase 上 【参考方案1】:

看来我已经设法解决了这个问题。我的 Git 有问题,但我不确定它是怎么来的。当这开始时我正在一个分支上工作,在合并到我的 master 之后,我从 Xcode 收到了我无法切换到我的 master 分支的消息,因为我有未提交的更改。

事实证明,那些未提交的更改是来自 Firebase 的头文件,并且它们在 Xcode 的 Source Control -> Commit... 菜单中都有 <Firebase Header name>.h ! 标记。通过切换到我的主分支,放弃这些更改让我启动并运行,现在警告消失了。我猜更新分支上的 pod 可能会导致问题 - 我猜 Firebase 是从我的各种 pod install 命令一路更新的。或者它可能是我在分支上更改的构建设置项。

【讨论】:

以上是关于Xcode8/Swift 3 更新后缺少 Firebase 标头警告的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 3 中打开 WIFI 设置

swift 3(xCode8-beta6)上的可达性问题

Xcode 8 / Swift 3 中的 iOS 异步单元测试(waitForExpectations 失败)

UITableView indexPathForCell:在iOS10中使用Xcode8(Swift2.3)返回nil

使用元类型值构造类类型“ClassName”的对象必须使用“必需”初始化程序 XCode8 Swift 3 更改

Xcode 8.3 Swift 3 FCM 通知上的 Firebase 问题 iOS 10.3 不起作用