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

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

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

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

  1. במסוף Firebase, עוברים אל Databases & Storage (מסדי נתונים ואחסון) >‏ Realtime Database (מסד נתונים בזמן אמת).

  2. לוחצים על יצירת מסד נתונים.

  3. בוחרים מצב התחלתי ל-Firebase Security Rules:

    מצב בדיקה

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

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

    מצב נעילה

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

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

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

כשמפעילים את Realtime Database, ה-API מופעל גם בCloud API Manager.

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

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

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

    flutter run
    

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

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

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

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

import 'package:firebase_database/firebase_database.dart';

כדי להשתמש במופע ברירת המחדל של מסד הנתונים, קוראים ל-instance getter ב-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/');

השלבים הבאים