不管我尝试什么,FIRUserInfo都是一个未声明的标识符。我正在尝试从Firebase 2.x迁移到3.x:不知何故Google / firebase服务器端最近的更改破坏了我的应用程序的facebook auth集成。
我确保我的Podfile安装了FirebaseAuth 3.0.2。我确保我的标头确实导入了@FirebaseAuth。我尝试清理我的构建文件夹,重新启动xcode等。
在Xcode 7.3.1中,我可以命令单击FIRUserInfo,它的确确实按预期在pod框架中找到了头文件。但它不会编译-下面的最后一行失败,并以FIRUserInfo作为未声明的标识符。
@import Firebase;
...
[[FIRAuth auth] signInWithCredential:credential completion:^(FIRUser * _Nullable user, NSError * _Nullable error) {
if (error || user.providerData.count < 1) {
DDLogWarn(@"Firebase login after facebook failed: %@", error);
if( weakSelf.signInCompletionHandler ) {
weakSelf.signInCompletionHandler(false, false, nil);
weakSelf.signInCompletionHandler = nil;
}
} else {
FIRDatabaseReference *userRef = [[FIRDatabase database] reference];
userRef = [userRef child:[NSString stringWithFormat:@"users/%@", user.uid]];
FIRUserInfo *profile = user.providerData.firstObject;
最佳答案
找到了答案。更改此:FIRUserInfo *profile
...对此:
id<FIRUserInfo> profile
男人,我一定真的很累,想念那件事。
抱歉大喊大叫,互联网...
关于ios - Firebase 3.x问题:FIRUserInfo是“未声明的标识符”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37312095/