Firebase Realtime Database เป็นฐานข้อมูลที่โฮสต์บนระบบคลาวด์ โดยจะจัดเก็บข้อมูลเป็น JSON และซิงค์แบบเรียลไทม์กับไคลเอ็นต์ที่เชื่อมต่อทั้งหมด เมื่อสร้างแอปข้ามแพลตฟอร์มด้วย SDK สำหรับ Android, iOS และ JavaScript ของเรา ไคลเอ็นต์ทั้งหมดจะแชร์อินสแตนซ์ Realtime Database เดียวกันและรับการอัปเดตด้วยข้อมูลล่าสุดโดยอัตโนมัติ
Firebase Realtime Database พร้อมใช้งานในแพลตฟอร์ม Apple ทั้งหมด ซึ่งรวมถึง iOS, macOS, macOS Catalyst, tvOS และ watchOS แต่ไม่พร้อมใช้งานสำหรับ App Clip วิธีการตั้งค่าในหน้านี้อ้างอิงถึง iOS ในตัวอย่างที่เฉพาะเจาะจง แต่เป็นวิธีการทั่วไปที่ใช้ได้กับเป้าหมายแพลตฟอร์ม Apple ทุกรายการ
ข้อกำหนดเบื้องต้น
- ติดตั้ง Firebase SDK
- เพิ่มแอปของคุณลงในโปรเจ็กต์ Firebase ใน Firebase คอนโซล
สร้างฐานข้อมูล
ในคอนโซลFirebase ให้ไปที่ฐานข้อมูลและพื้นที่เก็บข้อมูล > Realtime Database
คลิกสร้างฐานข้อมูล
เลือกโหมดเริ่มต้นสำหรับ Firebase Security Rules
- โหมดทดสอบ
เหมาะสำหรับการเริ่มต้นใช้งานไลบรารีของไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ แต่จะอนุญาตให้ทุกคนอ่านและเขียนทับข้อมูลของคุณได้ หลังจากทดสอบแล้ว โปรดตรวจสอบส่วนทำความเข้าใจกฎของฐานข้อมูลเรียลไทม์ของ Firebase
หากต้องการเริ่มต้นใช้งาน SDK สำหรับเว็บ, Apple หรือ Android ให้เลือก testmode
- โหมดล็อกขณะคุมสอบ
ปฏิเสธการอ่านและการเขียนทั้งหมดจากไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ แต่เซิร์ฟเวอร์แอปพลิเคชันที่ได้รับการตรวจสอบสิทธิ์จะยังเข้าถึงฐานข้อมูลได้
เลือกตำแหน่งสำหรับฐานข้อมูล
URL ของฐานข้อมูลใหม่จะมีรูปแบบอย่างใดอย่างหนึ่งต่อไปนี้ โดยขึ้นอยู่กับ ตำแหน่งของฐานข้อมูล
(สำหรับ ฐานข้อมูลในDATABASE_NAME.firebaseio.comus-central1) (สำหรับฐานข้อมูลในตำแหน่งอื่นๆ ทั้งหมด)DATABASE_NAME.REGION.firebasedatabase.app
คลิกเสร็จสิ้น
เมื่อคุณเปิดใช้ Realtime Database ระบบจะเปิดใช้ API ใน Cloud API Manager ด้วย
เพิ่ม Firebase Realtime Database ลงในแอป
ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase
- เปิดโปรเจ็กต์แอปใน Xcode แล้วไปที่ไฟล์ > เพิ่มแพ็กเกจ
- เมื่อได้รับข้อความแจ้ง ให้เพิ่มที่เก็บ Firebase Apple Platforms SDK ดังนี้
- เลือกไลบรารี Realtime Database
- เพิ่มแฟล็ก
-ObjCลงในส่วน Other Linker Flags ของการตั้งค่าบิลด์ของเป้าหมาย - เมื่อเสร็จแล้ว Xcode จะเริ่มจับคู่ข้อมูลและดาวน์โหลด ทรัพยากร Dependency ในเบื้องหลังโดยอัตโนมัติ
https://github.com/firebase/firebase-ios-sdk.git
กำหนดค่า Realtime Database Security Rules
Realtime Database มีภาษาของกฎแบบประกาศที่ช่วยให้คุณ กำหนดวิธีจัดโครงสร้างข้อมูล วิธีจัดทำดัชนี และเวลาที่ อ่านและเขียนข้อมูลได้
ตั้งค่า Firebase Realtime Database
คุณต้องเริ่มต้น Firebase ก่อนที่จะสร้างหรือใช้การอ้างอิงแอป Firebase หากคุณได้ดำเนินการนี้สำหรับฟีเจอร์ Firebase อื่นแล้ว ก็ให้ข้ามขั้นตอนนี้ไปได้
- นำเข้าโมดูล
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; // ...
- กำหนดค่าอินสแตนซ์ที่แชร์ในเมธอดของผู้รับมอบสิทธิ์ของแอป:
FirebaseAppapplication(_: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];
- หากใช้ SwiftUI คุณต้องสร้างผู้รับมอบสิทธิ์ของแอปพลิเคชันและแนบกับโครงสร้าง
Appผ่านUIApplicationDelegateAdaptorหรือNSApplicationDelegateAdaptorนอกจากนี้ คุณต้องปิดใช้การสลับผู้รับมอบสิทธิ์ของแอป ดูข้อมูลเพิ่มเติมได้ใน วิธีการสำหรับ SwiftUISwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
- สร้างการอ้างอิงไปยังฐานข้อมูลและระบุตำแหน่งที่ต้องการเขียน
Swift
หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่พร้อมใช้งานในเป้าหมาย App Clipvar ref: DatabaseReference! ref = Database.database().reference()
Objective-C
หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่พร้อมใช้งานในเป้าหมาย App Clip@property (strong, nonatomic) FIRDatabaseReference *ref; self.ref = [[FIRDatabase database] reference];
ขั้นตอนถัดไป
ดูวิธีจัดโครงสร้างข้อมูลสำหรับRealtime Database
เตรียมพร้อมสำหรับการเปิดตัวแอปโดยทำดังนี้
เปิดใช้ App Check เพื่อช่วยให้มั่นใจว่ามีเพียง แอปของคุณเท่านั้นที่เข้าถึงฐานข้อมูลได้
ตั้งค่า การแจ้งเตือน งบประมาณ สำหรับโปรเจ็กต์ในคอนโซล Google Cloud
ตรวจสอบแดชบอร์ด การใช้งานและการเรียกเก็บเงิน ในคอนโซล Firebase เพื่อดูภาพรวมการใช้งานโปรเจ็กต์ ในบริการ Firebase หลายรายการ นอกจากนี้ คุณยังไปที่ Realtime Database การใช้งาน แดชบอร์ด เพื่อดูข้อมูลการใช้งานโดยละเอียดเพิ่มเติมได้ด้วย
ตรวจสอบรายการตรวจสอบการเปิดตัว Firebase