Firebase Realtime Database คือฐานข้อมูลที่โฮสต์บนระบบคลาวด์ ระบบจะจัดเก็บข้อมูลเป็น JSON และซิงค์กับไคลเอ็นต์ที่เชื่อมต่อทั้งหมดแบบเรียลไทม์ เมื่อคุณสร้างแอปข้ามแพลตฟอร์มด้วย SDK ของ Android, iOS และ JavaScript ลูกค้าทั้งหมดจะแชร์อินสแตนซ์ Realtime Database รายการเดียวกันและได้รับการอัปเดตข้อมูลล่าสุดโดยอัตโนมัติ
Firebase Realtime Database พร้อมให้บริการบนแพลตฟอร์มทั้งหมดของ Apple ซึ่งรวมถึง iOS, macOS, macOS Catalyst, tvOS และ watchOS และไม่พร้อมใช้งานสำหรับ App Clips วิธีการตั้งค่าในหน้านี้อ้างอิงถึง iOS ในตัวอย่างที่เฉพาะเจาะจง แต่เป็นแบบทั่วไปและใช้ได้กับแพลตฟอร์ม Apple ทั้งหมด
ข้อกำหนดเบื้องต้น
- ติดตั้ง Firebase SDK
- เพิ่มแอปลงในโปรเจ็กต์ Firebase ในคอนโซล Firebase
สร้างฐานข้อมูล
ไปที่ส่วน Realtime Database ของคอนโซลFirebase ระบบจะแจ้งให้คุณเลือกโปรเจ็กต์ Firebase ที่มีอยู่ ทําตามเวิร์กโฟลว์การสร้างฐานข้อมูล
เลือกโหมดเริ่มต้นสำหรับ Firebase Security Rules
- โหมดทดสอบ
เหมาะสำหรับการเริ่มต้นใช้งานไลบรารีไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ แต่อนุญาตให้ทุกคนอ่านและเขียนทับข้อมูลของคุณได้ หลังจากทดสอบแล้ว อย่าลืมอ่านส่วนทําความเข้าใจกฎฐานข้อมูลเรียลไทม์ของ Firebase
หากต้องการเริ่มต้นใช้งาน SDK ของเว็บ, Apple หรือ Android ให้เลือก testmode
- โหมดล็อกขณะคุมสอบ
ปฏิเสธการอ่านและการเขียนทั้งหมดจากไคลเอ็นต์อุปกรณ์เคลื่อนที่และเว็บ เซิร์ฟเวอร์แอปพลิเคชันที่ตรวจสอบสิทธิ์จะยังคงเข้าถึงฐานข้อมูลได้
เลือกตำแหน่งสำหรับฐานข้อมูล
URL ของฐานข้อมูลใหม่จะอยู่ในรูปแบบใดรูปแบบหนึ่งต่อไปนี้ โดยขึ้นอยู่กับตำแหน่งของฐานข้อมูล
(สําหรับฐานข้อมูลในDATABASE_NAME.firebaseio.com
us-central1
) (สําหรับฐานข้อมูลในทุกตำแหน่งอื่นๆ)DATABASE_NAME.REGION.firebasedatabase.app
คลิกเสร็จสิ้น
เมื่อเปิดใช้ Realtime Database ระบบจะเปิดใช้ API ใน Cloud API Manager ด้วย
เพิ่ม Firebase Realtime Database ลงในแอป
ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase
- เปิดโปรเจ็กต์แอปใน Xcode แล้วไปที่ไฟล์ > เพิ่มแพ็กเกจ
- เมื่อได้รับข้อความแจ้ง ให้เพิ่มที่เก็บ Firebase SDK สำหรับแพลตฟอร์ม Apple ดังนี้
- เลือกคลัง Realtime Database
- เพิ่ม Flag
-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; // ...
- กำหนดค่าอินสแตนซ์ที่แชร์ในเมธอด
application(_:didFinishLaunchingWithOptions:)
ของตัวแทนแอป ดังนี้FirebaseApp
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
struct ผ่าน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 แดชบอร์ดการใช้งานเพื่อดูข้อมูลการใช้งานโดยละเอียดได้อีกด้วย