การติดตั้ง & ตั้งค่าในแพลตฟอร์ม Apple

Firebase Realtime Database เป็นฐานข้อมูลที่โฮสต์ในระบบคลาวด์ ข้อมูลจะจัดเก็บเป็น JSON และซิงค์แบบเรียลไทม์กับไคลเอ็นต์ที่เชื่อมต่อทุกเครื่อง เมื่อสร้างแอปข้ามแพลตฟอร์มด้วย Android, iOS และ JavaScript SDK ของเรา ไคลเอ็นต์ทั้งหมดจะแชร์อินสแตนซ์ Realtime Database เดียวและรับการอัปเดตพร้อมข้อมูลล่าสุดโดยอัตโนมัติ

Firebase Realtime Database พร้อมใช้งานในทุกแพลตฟอร์มของ Apple ซึ่งรวมถึง iOS, macOS, macOS Catalyst, tvOS และ watchOS โดยจะใช้กับ App Clip ไม่ได้ วิธีการตั้งค่าในหน้านี้อ้างอิงถึง iOS ในตัวอย่างที่เฉพาะเจาะจง แต่เป็นวิธีการทั่วไปและใช้ได้กับแพลตฟอร์ม Apple ใดก็ได้

ข้อกำหนดเบื้องต้น

  1. ติดตั้ง Firebase SDK
  2. เพิ่มแอปของคุณลงในโปรเจ็กต์ Firebase ในคอนโซล Firebase

สร้างฐานข้อมูล

  1. ไปยังส่วน Realtime Database ของFirebase คอนโซล ระบบจะแจ้งให้คุณเลือกโปรเจ็กต์ Firebase ที่มีอยู่ ทําตามขั้นตอนการสร้างฐานข้อมูล

  2. เลือกโหมดเริ่มต้นสำหรับ Firebase Security Rules

    โหมดทดสอบ

    เหมาะสําหรับการเริ่มต้นใช้งานไลบรารีของไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ แต่จะอนุญาตให้ทุกคนอ่านและเขียนทับข้อมูลของคุณได้ หลังจากทดสอบแล้ว อย่าลืมตรวจสอบส่วนทำความเข้าใจกฎของฐานข้อมูลเรียลไทม์ของ Firebase

    หากต้องการเริ่มต้นใช้งาน SDK ของเว็บ, Apple หรือ Android ให้เลือก testmode

    โหมดล็อกขณะคุมสอบ

    ปฏิเสธการอ่านและการเขียนทั้งหมดจากไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ เซิร์ฟเวอร์แอปพลิเคชันที่ได้รับการตรวจสอบสิทธิ์จะยังเข้าถึงฐานข้อมูลได้

  3. เลือกตำแหน่งสำหรับฐานข้อมูล

    URL สำหรับฐานข้อมูลใหม่จะอยู่ในรูปแบบใดรูปแบบหนึ่งต่อไปนี้ โดยขึ้นอยู่กับตำแหน่งของฐานข้อมูล

    • DATABASE_NAME.firebaseio.com (สำหรับ ฐานข้อมูลใน us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (สำหรับฐานข้อมูลในสถานที่อื่นๆ ทั้งหมด)

  4. คลิกเสร็จสิ้น

เมื่อเปิดใช้ Realtime Database ระบบจะเปิดใช้ API ใน Cloud API Manager ด้วย

เพิ่ม Firebase Realtime Database ลงในแอป

ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase

  1. เปิดโปรเจ็กต์แอปใน Xcode แล้วไปที่File > Add Packages
  2. เมื่อได้รับข้อความแจ้ง ให้เพิ่มที่เก็บ SDK ของแพลตฟอร์ม Apple ของ Firebase ดังนี้
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. เลือกRealtime Database คลัง
  5. เพิ่มแฟล็ก -ObjC ลงในส่วนแฟล็ก Linker อื่นๆ ของการตั้งค่าบิลด์ของเป้าหมาย
  6. เมื่อเสร็จแล้ว Xcode จะเริ่มจับคู่ข้อมูลและดาวน์โหลดทรัพยากร Dependency ในเบื้องหลังโดยอัตโนมัติ

กำหนดค่า Realtime Database Security Rules

Realtime Database มีภาษาของกฎแบบประกาศที่ช่วยให้คุณกำหนดโครงสร้างของข้อมูล วิธีจัดทำดัชนี และเวลาที่อ่านและเขียนข้อมูลได้

ตั้งค่า Firebase Realtime Database

คุณต้องเริ่มต้น Firebase ก่อนที่จะสร้างหรือใช้การอ้างอิงแอป Firebase หากคุณได้ดำเนินการนี้สำหรับฟีเจอร์อื่นของ Firebase แล้ว ให้ข้ามขั้นตอนนี้

  1. นำเข้าโมดูล FirebaseCore ใน UIApplicationDelegate รวมถึงโมดูล Firebase อื่นๆ ที่ตัวแทนแอปของคุณใช้ เช่น หากต้องการใช้ Cloud Firestore และ Authentication ให้ทำดังนี้

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. กำหนดค่า FirebaseApp อินสแตนซ์ที่แชร์ใน เมธอด application(_:didFinishLaunchingWithOptions:) ของตัวแทนแอป

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. หากใช้ SwiftUI คุณต้องสร้างตัวแทนแอปพลิเคชันและแนบไปกับโครงสร้าง App ผ่าน UIApplicationDelegateAdaptor หรือ NSApplicationDelegateAdaptor นอกจากนี้ คุณยังต้องปิดใช้การสวิซเซิลการมอบสิทธิ์ของแอปด้วย ดูข้อมูลเพิ่มเติมได้ที่วิธีการสำหรับ SwiftUI

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. สร้างการอ้างอิงไปยังฐานข้อมูลและระบุตำแหน่งที่ต้องการ เขียน

    Swift

    หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่พร้อมใช้งานในเป้าหมาย App Clip
    var ref: DatabaseReference!
    
    ref = Database.database().reference()

    Objective-C

    หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่พร้อมใช้งานในเป้าหมาย App Clip
    @property (strong, nonatomic) FIRDatabaseReference *ref;
    
    self.ref = [[FIRDatabase database] reference];

ขั้นตอนถัดไป