使用FileProvider分享文件异常

第一步:

在Androidmanifest中声明FileProvider

···

       

        

        

···
第二步:
在xml文件中新建一个名为 file_path.xml 的文件,内容如下:

···

 















 

···

第三步:
找到你需要分享的文件然后分享:
···

                     File file = new File(path);//需要分享文件
                     Uri uriForFile = FileProvider.getUriForFile(mContext,                   
                       "包名.fileProvider", file);//通过file provider拿到可供外部读取的URI链接
                     Intent intent1 = new Intent(Intent.ACTION_SEND);//设置意图为ACTION_SEND
                     intent1.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);//授权外部应用通过URI读取你的File(非常重要)
                     intent1.putExtra(Intent.EXTRA_STREAM,uriForFile);//Intent.EXTRA_STREAM分享一个文件流,uriForFile文件的URI
                     intent1.setType("application/*");
                     startActivity(Intent.createChooser(intent1,"选择分享"));//创建分享选择器

···
完美!!!

你可能感兴趣的:(使用FileProvider分享文件异常)