پیشنیازها
- اگر قبلاً
firebase_coreنصب نکردهاید، آن را نصب کنید و کد راهاندازی اولیه را به برنامه خود اضافه کنید. - برنامه خود را به پروژه Firebase خود در کنسول Firebase اضافه کنید.
ایجاد یک پایگاه داده
به بخش پایگاه داده بلادرنگ (Realtime Database) در کنسول Firebase بروید. از شما خواسته میشود که یک پروژه Firebase موجود را انتخاب کنید. مراحل ایجاد پایگاه داده را دنبال کنید.
یک حالت شروع برای قوانین امنیتی خود انتخاب کنید:
حالت تست
برای شروع کار با کتابخانههای کلاینت موبایل و وب خوب است، اما به هر کسی اجازه میدهد دادههای شما را بخواند و بازنویسی کند. پس از آزمایش، حتماً بخش « درک قوانین پایگاه داده بلادرنگ Firebase» را مرور کنید.
برای شروع، حالت آزمایشی (testmode) را انتخاب کنید.
حالت قفل شده
تمام خواندنها و نوشتنها را از کلاینتهای موبایل و وب رد میکند. سرورهای برنامهی کاربردی تأیید شدهی شما همچنان میتوانند به پایگاه دادهی شما دسترسی داشته باشند.
یک منطقه برای پایگاه داده انتخاب کنید. بسته به منطقه انتخابی شما، فضای نام پایگاه داده به شکل
<databaseName>.firebaseio.comیا<databaseName>.<region>.firebasedatabase.appخواهد بود. برای اطلاعات بیشتر، به بخش «مکانهای انتخاب برای پروژه خود» مراجعه کنید.روی انجام شد کلیک کنید.
وقتی Realtime Database را فعال میکنید، API را نیز در Cloud API Manager فعال میکند.
پایگاه داده Firebase Realtime را به برنامه خود اضافه کنید
از ریشه پروژه Flutter خود، دستور زیر را برای نصب افزونه اجرا کنید:
flutter pub add firebase_databaseپس از اتمام، برنامه Flutter خود را بازسازی کنید:
flutter run
پیکربندی قوانین پایگاه داده
پایگاه داده Realtime یک زبان قوانین اعلانی ارائه میدهد که به شما امکان میدهد نحوه ساختاردهی دادههای خود، نحوه فهرستبندی آنها و زمان خواندن و نوشتن دادهها را تعریف کنید.
مقداردهی اولیه پکیج Firebase Realtime Database
برای شروع استفاده از پکیج Realtime Database در پروژه خود، آن را در بالای فایلهای پروژه خود وارد کنید:
import 'package:firebase_database/firebase_database.dart';
برای استفاده از نمونه پیشفرض پایگاه داده، متد دریافت instance را در FirebaseDatabase فراخوانی کنید:
FirebaseDatabase database = FirebaseDatabase.instance;
اگر میخواهید از آن با یک برنامه ثانویه Firebase استفاده کنید، از متد static instanceFor استفاده کنید:
FirebaseApp secondaryApp = Firebase.app('SecondaryApp');
FirebaseDatabase database = FirebaseDatabase.instanceFor(app: secondaryApp);
اگر میخواهید از یک نمونه RTDB متفاوت در همان پروژه استفاده کنید، میتوانید با استفاده از متد static instanceFor ، یک databaseUrl به آن ارسال کنید:
final firebaseApp = Firebase.app();
final rtdb = FirebaseDatabase.instanceFor(app: firebaseApp, databaseURL: 'https://your-realtime-database-url.firebaseio.com/');