Google is committed to advancing racial equity for Black communities. See how.
หน้านี้ได้รับการแปลโดย Cloud Translation API
Switch to English

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

เพิ่ม 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.3.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.3.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

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

Java

FirebaseStorage storage = FirebaseStorage.getInstance();

โคตรลิน + KTX

storage = Firebase.storage

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

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

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

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

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

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

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

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

ใช้ที่เก็บข้อมูลหลายชุด

หากคุณต้องการใช้ที่เก็บข้อมูลที่นอกเหนือจากค่าเริ่มต้นที่ให้ไว้ข้างต้นหรือใช้ที่เก็บข้อมูลหลายชุดในแอปเดียวคุณสามารถสร้างอินสแตนซ์ของ 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")

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