未声明的标识符 FIRAuth

Posted

技术标签:

【中文标题】未声明的标识符 FIRAuth【英文标题】:Undeclared Identifier FIRAuth 【发布时间】:2017-04-21 08:41:30 【问题描述】:

我是 ios 初学者和火力基地。

我安装了 firebase 可可豆荚。 在我的loginViewcontroller.h 中导入firebase.h 添加了 pod 'Firebase/Core', 吊舱“火力基地/数据库”, pod 'Firebase/Auth'。

我正在从 parse 迁移到 firebase,我在 loginViewController.m 中添加了以下 fire base 身份验证代码。

[[FIRAuth auth] createUserWithEmail:email password:password completion:^(FIRUser *_Nullable user, NSError *_Nullable error) // ... ];

但它显示了一个名为 use of undeclared identifier FIRAuth 的错误。 请帮忙。

【问题讨论】:

你能详细解释一下你到底想要做什么吗? 【参考方案1】:

您应该导入 FirebaseAuth。

@import FirebaseAuth;

【讨论】:

【参考方案2】:

检查是否,

1) pod 'Firebase/Auth' 是否存在

2) 在应用代理中,您是否使用以下方法进行了配置

@import Firebase;
// Use Firebase library to configure APIs
[FIRApp configure];

【讨论】:

【参考方案3】:

试试这个,我希望它会有所帮助!但它很快

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject : AnyObject]? = [:]) -> Bool 
    UIApplication.shared.statusBarStyle = .lightContent
    FIRApp.configure()

    FIRDatabase.database().persistenceEnabled = true
    return true
  

之后就可以这样使用了!

     @IBAction func signUpDidTouch(_ sender: AnyObject)
  
    let alert = UIAlertController(title: "Register",message: "Register",preferredStyle: .alert)

    let saveAction = UIAlertAction(title: "Save",style: .default)  action in

      let emailField = alert.textFields![0]
      let passwordField = alert.textFields![1]

      FIRAuth.auth()?.createUser(withEmail: emailField.text!, password: passwordField.text!, completion:  (user, error) in

        if error == nil
          FIRAuth.auth()?.signIn(withEmail: self.textFieldLoginEmail.text!, password: self.textFieldLoginPassword.text!, completion: nil)
        
      )

    

【讨论】:

以上是关于未声明的标识符 FIRAuth的主要内容,如果未能解决你的问题,请参考以下文章

C 2065 AFX_IDW_MENUBAR未声明的标识符 错误提示

我在 Visual Studio C++ 中遇到这些错误:“NuovoUtente”:未声明的标识符和“CercareUtente”:未声明的标识符 [关闭]

vs中error c2065: “i”: 未声明的标识符怎么解决

未声明的标识符 CTFramesetter

未定义标识符/未声明

错误:使用未声明的标识符“touchesBegan”