FileProvider使用方法
paths 類型:
<files-path name="name" path="path" />
返回 Context.getFilesDir() + path
<cache-path name="name" path="path" />
返回 Context. getCacheDir() + path
<external-path name="name" path="path" />
返回 Environment.getExternalStorageDirectory() + path
<external-files-path name="name" path="path" />
返回 Context.getExternalFilesDir(null) + path
<external-cache-path name="name" path="path" />
返回 Context.getExternalCacheDir() + path
<external-media-path name="name" path="path" />
返回 Context.getExternalMediaDirs() + path
<root-path name="zixie_file_provider" path="" />
返回整個存儲目錄
name屬性:
指明了 FileProvider 在content uri中需要添加的部分
path屬性:
對應(yīng)的路徑的子路徑
path值為點(diǎn)符號(".")時,該根目錄下所有的文件夾都可以臨時授權(quán)訪問
舉個例子
<external-path
name="my_images"
path="Pictures" />
返回Environment.getExternalStorageDirectory() + Pictures儲存路徑
假設(shè)包名為com.test.app
當(dāng)訪問文件 content://com.test.app/my_images/123.jpg 時,就會找到path路徑Environment.getExternalStorageDirectory() + “/Pictures/” 并查找 123.jpg 圖片