Google 致力于为黑人社区推动种族平等。查看具体举措
หน้านี้ได้รับการแปลโดย Cloud Translation API
Switch to English

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

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

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

เพิ่ม Firebase ในโปรเจ็กต์ Android ของคุณ หากยังไม่ได้ ทำ

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

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

เพิ่ม Cloud Storage SDK ลงในแอปของคุณ

ใช้ Firebase Android BoM ประกาศการอ้างอิงสำหรับไลบรารี Cloud Storage Android ใน ไฟล์ Gradle ของ โมดูล (ระดับแอป) (โดยทั่วไปคือ app/build.gradle )

Java

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:26.6.0')

    // Declare the dependency for the Cloud Storage library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage'
}

เมื่อใช้ Firebase Android BoM แอปของคุณจะใช้ไลบรารี Firebase Android เวอร์ชันที่เข้ากันได้เสมอ

(ทางเลือก) ประกาศการอ้างอิงไลบรารี Firebase โดยไม่ต้อง ใช้ BoM

หากคุณเลือกที่จะไม่ใช้ Firebase BoM คุณต้องระบุไลบรารี Firebase แต่ละเวอร์ชันในบรรทัดการอ้างอิง

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

dependencies {
    // Declare the dependency for the Cloud Storage library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage:19.2.1'
}

โคตรลิน + KTX

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:26.6.0')

    // Declare the dependency for the Cloud Storage library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage-ktx'
}

เมื่อใช้ Firebase Android BoM แอปของคุณจะใช้ไลบรารี Firebase Android เวอร์ชันที่เข้ากันได้เสมอ

(ทางเลือก) ประกาศการอ้างอิงไลบรารี Firebase โดยไม่ต้อง ใช้ BoM

หากคุณเลือกที่จะไม่ใช้ Firebase BoM คุณต้องระบุไลบรารี Firebase แต่ละเวอร์ชันในบรรทัดการอ้างอิง

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

dependencies {
    // Declare the dependency for the Cloud Storage library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage-ktx:19.2.1'
}

ตั้งค่า Cloud Storage

ขั้นตอนแรกในการเข้าถึงที่เก็บข้อมูล Cloud Storage คือการสร้างอินสแตนซ์ของ FirebaseStorage :

Java

FirebaseStorage storage = FirebaseStorage.getInstance();

โคตรลิน + KTX

storage = Firebase.storage

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

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

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

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

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

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

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

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

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

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

Java

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

โคตรลิน + KTX

// Get a non-default Storage bucket
val storage = Firebase.storage("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 เริ่มต้นด้วยแอปนั้น:

Java

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

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

โคตรลิน + KTX

// Get the default bucket from a custom FirebaseApp
val storage = Firebase.storage(customApp!!)

// Get a non-default bucket from a custom FirebaseApp
val customStorage = Firebase.storage(customApp, "gs://my-custom-bucket")

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