بدء استخدام Cloud Storage على Flutter

تتيح لك خدمة Cloud Storage for Firebase تحميل المحتوى من إنشاء المستخدمين ومشاركته، مثل كصور ومقاطع فيديو، مما يتيح لك إنشاء محتوى وسائط متعددة تفاعلية في التطبيقات. يتم تخزين بياناتك في حزمة Google Cloud Storage: حل لتخزين العناصر على مقياس إكسابايت، مع توفُّر عالٍ وفي جميع أنحاء العالم التكرار. تتيح لك خدمة Cloud Storage for Firebase تحميل هذه الملفات بأمان. من الأجهزة المحمولة ومتصفحات الويب، مما يؤدي إلى التعامل مع الشبكات غير المستقرة والسهولة.

المتطلبات الأساسية

تثبيت حِزم تطوير البرامج (SDK) لمنصّة Firebase وإعدادها من أجل Flutter في حال: لم تفعل ذلك بالفعل.

إنشاء حزمة تلقائية في Cloud Storage

  1. من مساحة الروابط في وحدة تحكُّم Firebase، اختَر مساحة التخزين. ثم انقر على البدء.

  2. مراجعة الرسالة حول تأمين بياناتك في Cloud Storage باستخدام الأمان القواعد. أثناء التطوير، ضع في اعتبارك إعداد قواعدك للوصول العام.

  3. اختَر موقعًا جغرافيًا لموقعك الجغرافي التلقائي. حزمة Cloud Storage

    • إنّ إعداد الموقع الجغرافي هذا هو إعدادات مشروعك الموقع الجغرافي التلقائي لموارد Google Cloud Platform (GCP) تجدر الإشارة إلى أنّه سيتم استخدام هذا الموقع الجغرافي لخدمات GCP في مشروعك. التي تتطلب إعدادًا للموقع الجغرافي، وتحديدًا، قاعدة بيانات Cloud Firestore تطبيق App Engine (وهو مطلوب في حال استخدام Cloud Scheduler).

    • إذا لم تتمكّن من اختيار موقع جغرافي، يعني ذلك أنّ مشروعك قد يحتوي على موقع جغرافي تلقائي لمورد Google Cloud Platform. تم تعيينه إما أثناء المشروع الإنشاء أو عند إعداد خدمة أخرى تتطلب موقعًا الإعداد.

    إذا كنت مشتركًا في خطة Blaze، يمكنك إنشاء حِزم بيانات متعددة، لكل منها حِزمها الخاصة الموقع الجغرافي.

  4. انقر على تم.

إعداد إتاحة الوصول للجميع

توفّر خدمة Cloud Storage for Firebase لغة قواعد تعريفية تتيح لك لتحديد كيف يجب تنظيم بياناتك، وكيف يجب فهرستها، ومتى يجب يمكن قراءة البيانات منها والكتابة إليها. يكون الإذن بالقراءة والكتابة تلقائيًا في تم فرض قيود على Cloud Storage، لذا لا يمكن لأحد القراءة أو الكتابة سوى المستخدمين الذين تمت مصادقتهم. البيانات. للبدء بدون إعداد مصادقة Firebase، يمكنك: ضبط القواعد للوصول العلني

يؤدي ذلك إلى إتاحة خدمة Cloud Storage لأي شخص، حتى الأشخاص الذين لا يستخدمون لذا احرص على تقييد استخدام Cloud Storage مرة أخرى عند إعداد المصادقة.

إضافة حزمة تطوير البرامج (SDK) في Cloud Storage إلى تطبيقك

  1. من جذر مشروع Flutter، نفِّذ الأمر التالي لتثبيت. المكون الإضافي:

    flutter pub add firebase_storage
    
  2. بعد إكمال الخطوات، أعِد إنشاء تطبيق Flutter:

    flutter run
    
  3. قم باستيراد المكون الإضافي في تعليمة Dart الخاصة بك:

    import 'package:firebase_storage/firebase_storage.dart';
    

إعداد Cloud Storage

تتمثل الخطوة الأولى للوصول إلى حزمة Cloud Storage في إنشاء مثال FirebaseStorage:

final storage = FirebaseStorage.instance;

أنت جاهز لبدء استخدام Cloud Storage.

لنتعرّف أولاً على كيفية إنشاء مرجع Cloud Storage.

الإعداد المتقدّم

هناك بعض حالات الاستخدام التي تتطلب إعدادًا إضافيًا:

تعد حالة الاستخدام الأولى مثالية إذا كان لديك مستخدمون في جميع أنحاء العالم، وتريد وتخزين بياناتهم بالقرب منها. على سبيل المثال، يمكنك إنشاء مجموعات في الولايات المتحدة أوروبا وآسيا لتخزين البيانات للمستخدمين في هاتين المنطقتين لتقليل وقت الاستجابة

وتكون حالة الاستخدام الثانية مفيدة إذا كانت لديك بيانات بأنماط وصول مختلفة. على سبيل المثال، يمكنك إعداد حزمة متعدّدة المناطق أو إقليمية لتخزين والصور أو أي محتوى آخر يتم الوصول إليه بشكل متكرر، بالإضافة إلى حزمة تخزن النسخ الاحتياطية للمستخدمين أو غيره من المحتوى الذي يتم الوصول إليه بشكل غير متكرر.

في أي من حالات الاستخدام هذه، ستحتاج إلى استخدام حِزم متعدّدة في Cloud Storage

أما حالة الاستخدام الثالثة فهي مفيدة إذا كنت تنشئ تطبيقًا، مثل Google Drive، يتيح للمستخدمين امتلاك عدة حسابات تم تسجيل الدخول إليها (على سبيل المثال، حساب شخصي وحساب العمل). يمكنك استخدام تطبيق مخصَّص على Firebase لمصادقة كل حساب إضافي.

استخدام حِزم متعدّدة في Cloud Storage

إذا كنت تريد استخدام حزمة Cloud Storage غير الحزمة التلقائية المتوفّرة أعلاه، أو استخدام حِزم متعدّدة في Cloud Storage في تطبيق واحد، يمكنك إنشاء مثيل من FirebaseStorage تشير إلى حزمتك المخصّصة:

// Get a non-default Storage bucket
final storage = FirebaseStorage.instanceFor(bucket: "gs://my-custom-bucket");

العمل مع الحِزم التي تم استيرادها

عند استيراد حزمة حالية على Cloud Storage إلى Firebase، منح Firebase إمكانية الوصول إلى هذه الملفات باستخدام gsutil، تم تضمينها في حزمة تطوير البرامج (SDK) في Google Cloud:

gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://YOUR-CLOUD-STORAGE-BUCKET

يمكنك العثور على رقم مشروعك كما هو موضح في مقدمة إلى مشاريع Firebase:

لا يؤثر ذلك في الحِزم التي تم إنشاؤها حديثًا، لأنّ هذه الحِزم لديها إذن الوصول التلقائي. مجموعة التحكم للسماح بـ Firebase. هذا إجراء مؤقت، وسيتم تلقائيًا في المستقبل.

استخدام تطبيق مخصّص على Firebase

إذا كنت تنشئ تطبيقًا أكثر تعقيدًا باستخدام FirebaseApp مخصَّص، يمكنك: إنشاء مثيل لـ FirebaseStorage تم إعداده باستخدام هذا التطبيق:

// Use a non-default App
final storage = FirebaseStorage.instanceFor(app: customApp);

الخطوات التالية