תחילת העבודה עם מסד נתונים בזמן אמת

דרישות מוקדמות

  1. מתקינים את firebase_core ומוסיפים את קוד ההפעלה לאפליקציה, אם עוד לא עשיתם זאת.
  2. מוסיפים את האפליקציה לפרויקט Firebase במסוף Firebase.

יצירת מסד נתונים

  1. עוברים לקטע מסד נתונים בזמן אמת במסוף Firebase. תתבקשו לבחור פרויקט קיים ב-Firebase. פועלים לפי תהליך העבודה ליצירת מסד נתונים.

  2. בוחרים מצב התחלתי לכללי האבטחה:

    מצב בדיקה

    החשבון הזה מתאים להתחלת העבודה עם ספריות לקוח לנייד ולאינטרנט, אבל כל אחד יכול לקרוא ולשכתב את הנתונים שלכם. אחרי הבדיקה, חשוב לעיין בקטע הסבר על כללי מסד נתונים בזמן אמת ב-Firebase.

    כדי להתחיל, בוחרים באפשרות testmode.

    מצב נעילה

    דחיית כל הקריאות והכתיבות מלקוחות ניידים ואינטרנט. שרתי האפליקציות המאומתים שלכם עדיין יכולים לגשת למסד הנתונים.

  3. בוחרים אזור למסד הנתונים. בהתאם לאזור שתבחרו, מרחב השמות של מסד הנתונים יהיה מהצורה <databaseName>.firebaseio.com או <databaseName>.<region>.firebasedatabase.app. מידע נוסף זמין במאמר בנושא בחירת מיקומים לפרויקט.

  4. לוחצים על סיום.

כשמפעילים את מסד נתונים בזמן אמת, ה-API מופעל גם בCloud API Manager.

הוספת מסד נתונים בזמן אמת ב-Firebase לאפליקציה

  1. מריצים את הפקודה הבאה כדי להתקין את הפלאגין מהרמה הבסיסית (root) של פרויקט Flutter:

    flutter pub add firebase_database
    
  2. בסיום התהליך, צריך לבנות מחדש את אפליקציית Flutter:

    flutter run
    

הגדרת כללים למסד הנתונים

ב-מסד נתונים בזמן אמת יש שפת כללים הצהרתית שמאפשרת לכם להגדיר איך הנתונים צריכים להיות מובְנים, איך הם צריכים להיות מאונדקסים ומתי אפשר לקרוא את הנתונים ולכתוב אותם.

הפעלת חבילת מסד נתונים בזמן אמת ב-Firebase

כדי להתחיל להשתמש בחבילה Realtime Database בפרויקט, מייבאים אותה בחלק העליון של קובצי הפרויקט:

import 'package:firebase_database/firebase_database.dart';

כדי להשתמש במופע ברירת המחדל של מסד הנתונים, קוראים ל-getter‏ instance ב-FirebaseDatabase:

FirebaseDatabase database = FirebaseDatabase.instance;

אם רוצים להשתמש בו עם אפליקציית Firebase משנית, משתמשים בשיטה הסטטית instanceFor:

FirebaseApp secondaryApp = Firebase.app('SecondaryApp');
FirebaseDatabase database = FirebaseDatabase.instanceFor(app: secondaryApp);

אם רוצים להשתמש במופע אחר של RTDB באותו פרויקט, אפשר להעביר databaseUrl באמצעות השיטה הסטטית instanceFor:

final firebaseApp = Firebase.app();
final rtdb = FirebaseDatabase.instanceFor(app: firebaseApp, databaseURL: 'https://your-realtime-database-url.firebaseio.com/');

השלבים הבאים