【Swift5】FirebaseのCloudFirestoreを使う方法

Shopping

Firebaseのデータベース「Cloud Firestore」を使いたい!

今回はこのような要望に答えていきたいと思います。

本記事で紹介すること

  • プロジェクトを作成する
  • Cocoapodsを使ってCloud Firestoreをインストールする
  • 読み書きをする

 

プロジェクトを作成する

まずはFirebaseにプロジェクトを作成しましょう。

以下のページにアクセスして「プロジェクトを追加」をクリックしてください

ログイン - Google アカウント

次にプロジェクト名を入力してください。プロジェクト名は英語で分かりやすい名前にしておいてください。

アナリティクスをONにするかという画面が出てくるのでOFFで大丈夫です。

するとプロジェクトを作成できましたね!

 

Cloud Firestoreをインストールする

次に、IOSと書かれたボタンを押してください。

以下の内容を入力します。

  • iOS バンドル ID:Xcodeで指定したバンドルIDを入力
  • アプリのニックネーム:入力しない
  • App Store ID:入力しない

すると「Google….をダウンロード」というボタンが表示されるのでダウンロードし、以下の画像のようにプロジェクトに追加してください。

次に「Terminal」を開き、以下のコマンドを1行ずつ入力してください。

cd ここにプロジェクトのパスを指定(例:Desktop/testProject
pod init

すると、指定したプロジェクトの中に「podfile」というものができたと思います。

以下のコマンドで「podfile」を開きましょう

open podfile

開くことができたら、以下を記入し保存してください。

use_frameworks! #ここは予め記入済み

pod'Firebase/Core'
pod'Firebase/Firestore'
pod'FirebaseFirestoreSwift'

Terminalに戻り以下を記入してください。

pod intall

以上で、プロジェクトにFirebaseを追加することができました!

Xcodeで開くときは白いアイコンの「.xcworkspace」というファイルを開くようにしてください!

 

読み書きをする

読み書きをする前にAppDelegateに以下を記入してください。

import Firebase //ここを記入
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

FirebaseApp.configure() //ここを記入

 

データベースに追加する

「追加」というボタンを設置してください。

ViewContorllerを開き追加ボタンのアクションに以下を記載してください。

let db =Firestore.firestore()
var ref: DocumentReference? = nil
ref = db.collection("ScoreBoard").addDocument(data: [
    "name": "Taro",
    "score": 10
]) { err in
    if let err = err {
        print("Error adding document: \(err)")
    } else {
        print("Document added with ID: \(ref!.documentID)")
    }
}

これだけです!

 

データベースから取得する

db.collection("ScoreBoard").getDocuments() { (querySnapshot, err) in
    if let err = err {
        print("Error getting documents: \(err)")
    } else {
        for document in querySnapshot!.documents {
            print("\(document.documentID) => \(document.data())")
        }
    }
}

これでデータを取得することができました!

今回はこれで以上です。

Cloud Firestore便利なのでこれからガンガン使っていきましょうね〜

タイトルとURLをコピーしました