编写:jdneo - 原文:http://developer.android.com/training/secure-file-sharing/index.html
一个程序经常需要向其他程序提供一个甚至多个文件。例如,当我们用图片编辑器编辑图片时,被编辑的图片往往由图库应用程序所提供;再比如,文件管理器会允许用户在外部存储的不同区域之间复制粘贴文件。这里,我们提出一种让应用程序可以分享文件的方法:即令发送文件的应用程序对索取文件的应用程序所发出的文件请求进行响应。
在任何情况下,将文件从我们的应用程序发送至其它应用程序的唯一的安全方法是向接收文件的应用程序发送这个文件的content URI,并对该URI授予临时访问权限。具有URI临时访问权限的content URI是安全的,因为他们仅应用于接收这个URI的应用程序,并且会自动过期。Android的FileProvider组件提供了getUriForFile()方法创建一个文件的content URI。
如果希望在应用之间共享少量的文本或者数字等类型的数据,应使用包含该数据的Intent。要学习如何通过Intent发送简单数据,可以阅读:Sharing Simple Data。
本课主要介绍了如何使用Android的FileProvider组件所创建的content URI在应用之间安全的共享文件。当然,要做到这一点,还需要给接收文件的应用程序访问的这些content URI授予临时访问权限。