Check out what’s new from Firebase at Google I/O 2022. Learn more

เริ่มต้นใช้งาน Cloud Storage สำหรับ Unity

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

ก่อนจะเริ่ม

ก่อนที่คุณจะสามารถใช้ Cloud Storage คุณต้อง:

  • ลงทะเบียนโครงการ Unity ของคุณและกำหนดค่าให้ใช้ Firebase

    • หากโปรเจ็กต์ Unity ของคุณใช้ Firebase อยู่แล้ว แสดงว่าได้ลงทะเบียนและกำหนดค่าสำหรับ Firebase แล้ว

    • หากคุณไม่มีโปรเจ็กต์ Unity คุณสามารถดาวน์โหลด แอปตัวอย่าง ได้

  • เพิ่ม Firebase Unity SDK (โดยเฉพาะ FirebaseStorage.unitypackage ) ให้กับโปรเจ็กต์ Unity

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

สร้างที่เก็บข้อมูล Cloud Storage เริ่มต้น

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

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

  3. เลือก ตำแหน่ง สำหรับที่เก็บข้อมูล Cloud Storage เริ่มต้นของคุณ

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

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

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

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

ตั้งค่าการเข้าถึงสาธารณะ

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

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

เข้าถึงคลาส FirebaseStorage

Firebase.Storage.FirebaseStorage เป็นจุดเริ่มต้นสำหรับ Cloud Storage Unity SDK

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

คุณพร้อมที่จะเริ่มใช้ Cloud Storage แล้ว!

ขั้นแรก มาเรียนรู้วิธี สร้างข้อมูลอ้างอิง Cloud Storage

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

มีบางกรณีการใช้งานที่ต้องมีการตั้งค่าเพิ่มเติม:

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

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

ในกรณีการใช้งานเหล่านี้ คุณจะต้อง ใช้ที่เก็บข้อมูล Cloud Storage หลายที่

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

ใช้ที่เก็บข้อมูล Cloud Storage หลายอัน

หากคุณต้องการใช้ที่เก็บข้อมูล Cloud Storage นอกเหนือจากค่าเริ่มต้นที่ให้ไว้ข้างต้น หรือใช้ที่เก็บข้อมูล Cloud Storage หลายรายการในแอปเดียว คุณสามารถสร้างอินสแตนซ์ของ FirebaseStorage ที่อ้างอิงที่เก็บข้อมูลที่กำหนดเองของคุณ:

// Get a non-default Storage bucket
var storage = FirebaseStorage.GetInstance("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 แบบกำหนดเอง

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

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

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