การแชร์ไฟล์

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

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

หากต้องการแชร์ข้อความหรือข้อมูลตัวเลขจํานวนเล็กน้อยระหว่างแอป คุณควรส่ง Intent ที่มีข้อมูล หากต้องการดูวิธีส่งข้อมูลอย่างง่ายด้วย Intent โปรดดูชั้นเรียนการฝึกอบรมการแชร์ข้อมูลอย่างง่าย

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

บทเรียน

การตั้งค่าการแชร์ไฟล์
ดูวิธีตั้งค่าแอปเพื่อแชร์ไฟล์
การแชร์ไฟล์
ดูวิธีเสนอไฟล์ให้แอปอื่นด้วยการสร้าง URI เนื้อหาสำหรับไฟล์ ให้สิทธิ์เข้าถึง URI และส่ง URI ไปยังแอป
การขอไฟล์ที่แชร์
ดูวิธีขอไฟล์ที่แอปอื่นแชร์ รับ URI เนื้อหาของไฟล์ และใช้ URI เนื้อหาเพื่อเปิดไฟล์
การดึงข้อมูลไฟล์
ดูวิธีที่แอปสามารถใช้ URI ของเนื้อหาที่สร้างขึ้นโดย FileProvider เพื่อดึงข้อมูลไฟล์ ซึ่งรวมถึงประเภท MIME และขนาดไฟล์

ดูข้อมูลเพิ่มเติมที่เกี่ยวข้องได้ที่