Catch up on highlights from Firebase at Google I/O 2023. Learn more

เริ่มต้นใช้งาน Cloud Storage บน Flutter

การจัดเก็บข้อมูลแบบคลาวด์สำหรับ Firebase ช่วยให้คุณสามารถอัปโหลดและผู้ใช้ส่วนแบ่งการสร้างเนื้อหาเช่นภาพและวิดีโอซึ่งจะช่วยให้คุณสามารถสร้างเนื้อหาสื่อสมบูรณ์ลงในปพลิเคชันของคุณ ข้อมูลของคุณจะถูกเก็บไว้ใน การ จัดเก็บข้อมูล Google Cloud ถัง - วิธีการแก้ปัญหา Exabyte ขนาดการเก็บรักษาวัตถุมีความพร้อมสูงและความซ้ำซ้อนทั่วโลก การจัดเก็บข้อมูลแบบคลาวด์สำหรับ Firebase ช่วยให้คุณปลอดภัยอัปโหลดไฟล์เหล่านี้ได้โดยตรงจากโทรศัพท์มือถือและเว็บเบราว์เซอร์, การจัดการเครือข่ายขาด ๆ หาย ๆ ได้อย่างง่ายดาย

ข้อกำหนดเบื้องต้น

ติดตั้งและเริ่มต้น Firebase SDKs สำหรับ Flutter ถ้าคุณยังไม่ได้ดำเนินการ

สร้างเริ่มต้นถัง Cloud Storage

  1. จากบานหน้าต่างนำทางของ Firebase คอนโซล เลือก การจัดเก็บ แล้วคลิก เริ่มต้น

  2. ตรวจสอบการส่งข้อความเกี่ยวกับการรักษาความปลอดภัยข้อมูล Cloud Storage ของคุณโดยใช้กฎความปลอดภัย ในระหว่างการพัฒนาให้พิจารณา ตั้งค่ากฎของคุณสำหรับการเข้าถึงประชาชน

  3. เลือก สถานที่ สำหรับการเริ่มต้นของการจัดเก็บเมฆถังของคุณ

    • การตั้งค่าสถานที่แห่งนี้เป็นโครงการของ แพลทฟอร์มเริ่มต้น Google Cloud (GCP) ที่ตั้งของทรัพยากร โปรดทราบว่าสถานที่แห่งนี้จะถูกใช้สำหรับการให้บริการ GCP ในโครงการของคุณที่ต้องมีการตั้งค่าสถานที่โดยเฉพาะของคุณ เมฆ FireStore ฐานข้อมูลของคุณและ App Engine แอป (ซึ่งเป็นสิ่งจำเป็นถ้าคุณใช้ระบบคลาวด์จัดตารางเวลา)

    • ถ้าคุณไม่สามารถที่จะเลือกสถานที่แล้วโครงการของคุณแล้วมีสถานที่ตั้งทรัพยากร GCP เริ่มต้น มันถูกสร้างทั้งในระหว่างการสร้างโครงการหรือเมื่อตั้งค่าบริการที่ต้องใช้การตั้งค่าตำแหน่งอื่น

    ถ้าคุณอยู่ในแผน Blaze คุณสามารถ สร้างหลายบุ้งกี๋ แต่ละคนมีของตัวเอง ที่ตั้ง

  4. คลิก เสร็จสิ้น

ตั้งค่าการเข้าถึงประชาชน

การจัดเก็บข้อมูลแบบคลาวด์สำหรับ Firebase ให้ภาษากฎเปิดเผยที่ช่วยให้คุณสามารถกำหนดวิธีการที่ข้อมูลของคุณควรจะมีโครงสร้างว่ามันควรจะจัดทำดัชนีและเมื่อข้อมูลของคุณสามารถอ่านและเขียนไปยัง โดยค่าเริ่มต้นการอ่านและเขียนการเข้าถึงการจัดเก็บเมฆถูก จำกัด เพื่อให้ผู้ใช้รับรองความถูกต้องเท่านั้นที่สามารถอ่านหรือเขียนข้อมูล ในการเริ่มต้นโดยไม่ต้องตั้งค่าการ รับรองความถูกต้อง Firebase คุณสามารถ กำหนดค่ากฎของคุณสำหรับการเข้าถึงของประชาชน

นี้จะทำให้การจัดเก็บเมฆเปิดให้ทุกคนแม้คนไม่ได้ใช้แอปของคุณเพื่อให้แน่ใจว่าการ จำกัด การจัดเก็บข้อมูลแบบคลาวด์ของคุณอีกครั้งเมื่อคุณตั้งค่าการตรวจสอบ

เพิ่มการจัดเก็บเมฆ SDK เพื่อ app ของคุณ

  1. จากรากของโครงการกระพือของคุณเรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้งปลั๊กอิน:

    flutter pub add firebase_storage
    
  2. เมื่อเสร็จแล้วสร้างแอปพลิเคกระพือของคุณ:

    flutter run
    
  3. นำเข้าปลั๊กอินในรหัสโผของคุณ:

    import 'package:firebase_storage/firebase_storage.dart';
    

ตั้งค่าการจัดเก็บเมฆ

ขั้นตอนแรกในการเข้าถึงถัง Cloud Storage ของคุณคือการสร้างตัวอย่างของ FirebaseStorage :

final storage = FirebaseStorage.instance;

คุณพร้อมที่จะเริ่มใช้การจัดเก็บเมฆ!

อันดับแรกให้เรียนรู้วิธีการ สร้างการอ้างอิง Cloud Storage

การตั้งค่าขั้นสูง

มีกรณีการใช้งานไม่กี่คนที่จำเป็นต้องมีการติดตั้งเพิ่มเติม:

กรณีใช้งานครั้งแรกเป็นที่สมบูรณ์แบบถ้าคุณมีผู้ใช้ทั่วโลกและต้องการจัดเก็บข้อมูลของพวกเขาอยู่ใกล้พวกเขา ตัวอย่างเช่นคุณสามารถสร้างบุ้งกี๋ในสหรัฐอเมริกายุโรปและเอเชียเพื่อเก็บข้อมูลสำหรับผู้ใช้ในพื้นที่เหล่านั้นเพื่อลดความล่าช้า

กรณีการใช้งานที่สองจะเป็นประโยชน์ถ้าคุณมีข้อมูลที่มีรูปแบบที่แตกต่างกันการเข้าถึง ตัวอย่างเช่นคุณสามารถตั้งค่าถังหลายภูมิภาคหรือระดับภูมิภาคว่าภาพร้านค้าหรือเนื้อหาที่เข้าถึงบ่อยอื่น ๆ และ nearline หรือ coldline ถังว่าการสำรองข้อมูลผู้ใช้ร้านค้าหรือเนื้อหาที่เข้าถึงบ่อยอื่น ๆ

ในทั้งสองกรณีการใช้งานเหล่านี้คุณจะต้องการที่จะ ใช้หลายบุ้งกี๋ Cloud Storage

กรณีการใช้งานที่สามจะเป็นประโยชน์ถ้าคุณกำลังสร้างแอปเช่น Google ไดรฟ์ซึ่งจะช่วยให้ผู้ใช้มีหลายบันทึกไว้ในบัญชี (เช่นบัญชีส่วนตัวและบัญชีทำงาน) คุณสามารถ ใช้กำหนดเอง Firebase แอป เช่นการตรวจสอบแต่ละบัญชีเพิ่มเติม

ใช้หลายบุ้งกี๋ Cloud Storage

หากคุณต้องการที่จะใช้การจัดเก็บเมฆถังอื่น ๆ นอกเหนือจากที่ระบุไว้ข้างต้นหรือใช้หลายบุ้งกี๋ Cloud Storage ใน app เดียวคุณสามารถสร้างตัวอย่างของ FirebaseStorage ที่อ้างอิงถังของคุณเอง:

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

การทำงานกับบุ้งกี๋นำเข้า

เมื่อนำเข้าที่มีอยู่ถัง Cloud Storage เข้า Firebase คุณจะต้องให้ Firebase สามารถในการเข้าถึงไฟล์เหล่านี้โดยใช้ gsutil เครื่องมือที่รวมอยู่ใน Google Cloud SDK :

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

คุณสามารถค้นหาหมายเลขโครงการของคุณเป็นที่อธิบายไว้ใน เบื้องต้นเกี่ยวกับโครงการ Firebase

นี้ไม่ได้ส่งผลกระทบต่อบุ้งกี๋ที่สร้างขึ้นใหม่เป็นผู้ที่มีชุดควบคุมการเข้าถึงเริ่มต้นที่จะอนุญาตให้ Firebase นี้เป็นมาตรการชั่วคราวและจะดำเนินการโดยอัตโนมัติในอนาคต

ใช้กำหนดเอง Firebase App

หากคุณกำลังสร้างแอปที่มีความซับซ้อนมากขึ้นโดยใช้ที่กำหนดเอง FirebaseApp คุณสามารถสร้างตัวอย่างของ FirebaseStorage เริ่มต้นได้ด้วย app ที่:

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

ขั้นตอนถัดไป