Các ứng dụng thường có nhu cầu cung cấp một hoặc nhiều tệp cho một ứng dụng khác. Ví dụ: thư viện hình ảnh có thể muốn cung cấp tệp cho trình chỉnh sửa hình ảnh hoặc một ứng dụng quản lý tệp nên cho phép người dùng sao chép và dán tệp giữa các khu vực trong bộ nhớ ngoài. Ứng dụng gửi có thể chia sẻ tệp theo một cách là phản hồi yêu cầu của ứng dụng nhận.
Trong mọi trường hợp, cách an toàn duy nhất để cung cấp một tệp từ ứng dụng của bạn sang một ứng dụng khác là gửi cho ứng dụng nhận URI nội dung của tệp đó và cấp quyền truy cập tạm thời cho URI đó.
Các URI nội dung có quyền truy cập URI tạm thời đều an toàn vì những URI này chỉ áp dụng cho ứng dụng nhận URI và sẽ tự động hết hạn. Thành phần FileProvider
của Android cung cấp phương thức getUriForFile()
để tạo URI nội dung của tệp.
Nếu muốn chia sẻ một lượng nhỏ dữ liệu dạng văn bản hoặc số giữa các ứng dụng, bạn nên gửi Intent
chứa dữ liệu đó. Để tìm hiểu cách gửi dữ liệu đơn giản bằng Intent
, hãy xem lớp đào tạo Chia sẻ dữ liệu đơn giản.
Lớp này giải thích cách chia sẻ an toàn các tệp từ ứng dụng của bạn sang một ứng dụng khác bằng cách sử dụng URI nội dung do thành phần FileProvider
của Android tạo ra và các quyền tạm thời mà bạn cấp cho ứng dụng nhận đối với URI nội dung.
Bài học
- Thiết lập tính năng chia sẻ tệp
- Tìm hiểu cách thiết lập ứng dụng để chia sẻ tệp.
- Chia sẻ tệp
- Tìm hiểu cách cung cấp tệp cho một ứng dụng khác bằng cách tạo URI nội dung cho tệp, cấp quyền truy cập vào URI và gửi URI cho ứng dụng.
- Yêu cầu một tệp được chia sẻ
- Tìm hiểu cách yêu cầu tệp do một ứng dụng khác chia sẻ, nhận URI nội dung cho tệp và sử dụng URI nội dung để mở tệp.
- Truy xuất thông tin tệp
-
Tìm hiểu cách một ứng dụng có thể dùng URI nội dung do
FileProvider
tạo để truy xuất thông tin tệp, bao gồm cả loại MIME và kích thước tệp.
Để biết thêm thông tin liên quan, hãy tham khảo: