エラー内容
FacebookログインをFirebaseを用いて実装しようと思い、コードを書いている際に発生したエラーです。記述コードは以下の通り。
AppDelegate.swift
import UIKit
import Firebase //このコードを記述
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
FirebaseApp.configure() //このコードを記述
return true
}
FirebaseApp.configure()
の箇所にUse of unresolved identifier 'FirebaseApp'
というエラーが発生する。
環境▼
swift5
Xcode 11.6
原因
どうやらpod 'Firebase/Core'
をインストールした際に、古いバージョンでインストールされていた模様。FirebaseApp
はバージョン4以上でないと定義されていないらしい。
なので、pod 'Firebase/Core'
のバージョンを更新すれば解決できそう!
対処法
①対象アプリのディレクトリ内に存在するPodfile.lock
ファイルを削除。
②ターミナルで以下のコードを実行し、podを最新状態へ更新する。(アプリのディレクトリ
ターミナル.
pod repo update
ターミナル.
pod update
③続いて依存関係を考慮したいので、podfileにはpod 'Firebase/Core'
だけを記述して以下を実行。
ターミナル.
pod install
これで最新のpod 'Firebase/Core'
と、関連のライブラリがインストールされるので、Xcodeで確認してみて下さい。エラーが解決されていると思います。
なお、一度最新のpodをインストールすればPodfile.lock
に最新バージョンが固定される為、他のpodを入れても問題ないので安心して下さい!
最後に
今回のエラーはswift初学者が高確率で遭遇するエラーだと思われます。
是非参考にして下さい!