bas*_*svk 4 ios cocoapods firebase swiftpm
我们已经从 CocoaPods 迁移有一段时间了,但并不是每个依赖项都进行了转换。就像 Firebase 一样。
我对重复符号有类似的问题,但现在我面临着新的问题,这可能是因为我在 SwiftPM 和 CocoaPods 中都使用了依赖项。
运行我的(示例)项目后它崩溃了:
-[FBLPromise firebaseInstallationID]: unrecognized selector sent to instance 0x600003f5a430
Run Code Online (Sandbox Code Playgroud)
顶部有警告:
objc[93047]: Class FBLPromise is implemented in both
/xxx/SampleProject.app/Frameworks/FBLPromises.framework/FBLPromises (0x10b3f09a8) and
/xxx/SampleProject.app/SampleProject (0x10af736f0).
One of the two will be used. Which one is undefined.
Run Code Online (Sandbox Code Playgroud)
在更新到 Firebase SDK v6.26.0 之前,我只会收到第一个警告,但更新后它崩溃了。
我看到了一篇关于如何在库中使用 Firebase 的文档,以及一个关于类似崩溃的GitHub 问题。但除了降级之外,似乎没有什么可以解决这个崩溃问题。
我上传了一个示例项目:https://github.com/basvankuijck/SampleProjectFirebaseCrash。
删除 SwiftPM Promises 依赖项不是一个选项,因为实际项目正在使用对 Promises 具有依赖项的 SwiftPM 依赖项。
Podfile并没有那么花哨,SampleProject 仅使用一个SwiftPM 依赖项。
谁知道如何让 SwiftPM 和 CocoaPods 很好地协同工作,尤其是中间有 Firebase?
小智 6
我在使用 Firebase 和 FBLPromise 时遇到了完全相同的问题。对我来说,它的出现是因为我在 podfile 中添加了 Firebase/FireStore,但其余的 FIrebase 依赖项来自 SPM。我的其他 SPM 依赖项还有 FBLPromise。
为了修复这个问题,我必须从 SPM 中删除 FIrebase 包,然后使用 FIrestore 以及我可能需要从 Firebase 获得的其他依赖项再次添加它。
没有其他解决方案对我有用。
| 归档时间: |
|
| 查看次数: |
1969 次 |
| 最近记录: |