Firebase 3.6.0 中的警告。 Xcode 8 - Swift 3。
这些是Firebase类: -
@class FIROptions
@class FIRAuthCredential
@class FIRUserProfileChangeRequest
- (可空实例类型)init NS_UNAVAILABLE;
想想它可能是一个错误!
但如果没有,任何想法如何解决它?
答案 0 :(得分:10)
原始回答:从最新的Firebase(3.7.1)开始,此问题已解决。只需做一个" pod更新Firebase"然后清理您的项目(通过Option键清除构建文件夹以确保)。
更新回答:不,我的不好......问题依然存在。
进一步深入研究,这里有一个很好的解释:https://stackoverflow.com/a/39233507/3638762
与此同时(因为我对你的希望感到沮丧)我找到了一个很好的方法来抑制警告。我不得不猜测-Wnullability警告类型。 ; - )
在Pods / FirebaseCore / Frameworks / FirebaseCore.framework / Headers / FIRApp.h中的违规行周围添加这三个#pragma行:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnullability"
- (nullable instancetype)init NS_UNAVAILABLE;
#pragma clang diagnostic pop
干杯!
答案 1 :(得分:2)
以下是解决方案Build Settings - >代码签名身份 - >将调试和发布更改为iOS Developer。
答案 2 :(得分:1)
在等待Firebase小组解决此错误的同时,您可以考虑将Swift Optimization Level
中的Build Settings
更改为None
。
请注意,这是一种临时解决方法。在Firebase发布修复程序后,请将其切换回Fast, Whole Module Optimization
。
答案 3 :(得分:1)
就我而言,我去了Build Settings - >代码签名身份 - >将调试和发布更改为iOS Developer。
答案 4 :(得分:1)
转到你的Pods - >构建设置 - >使用Legacy Swift语言版本并将其设置为No,这对我有用。
清理项目并构建。
我能够重现警告并多次修复。
答案 5 :(得分:0)
它由firebase 4.0.4解决,只需确保在app delegate中的didFinishLaunchingWithOptions函数中编写“FirebaseApp.configure()”,而不是旧的“FIRApp.configure()”
祝你好运答案 6 :(得分:-1)
清除派生数据文件夹并清理似乎会让这些错误消失。如果你看到"停!!将从内存重置deviceID。"同时,启用功能中的钥匙串共享。