android.os.FileUriExposedException:<filename>通过Intent.getData()暴露给应用程序之外。
创始人
2024-08-20 02:30:08
0

Android 7.0及更高版本中,引入了FileUriExposedException异常,用于防止应用程序使用file:// URI暴露文件给其他应用。为了解决这个问题,可以使用FileProvider来生成content:// URI,以便在应用之间共享文件。

以下是一个解决方法的示例代码:

首先,在AndroidManifest.xml文件中添加FileProvider的声明:


    
        ...
        
            
        
    

然后,在res/xml目录下创建file_paths.xml文件,指定要共享的文件路径:



    

接下来,在需要共享文件的地方,使用FileProvider生成content:// URI,并将其传递给Intent:

// 获取文件的路径
File file = new File(filePath);
// 通过FileProvider生成content:// URI
Uri fileUri = FileProvider.getUriForFile(context, "com.example.myapp.fileprovider", file);

// 将content:// URI传递给Intent
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/jpeg");
intent.putExtra(Intent.EXTRA_STREAM, fileUri);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(intent);

注意:在使用Intent传递content:// URI时,需要为Intent添加FLAG_GRANT_READ_URI_PERMISSION标志,以授予接收方应用程序对该URI的读取权限。

这样就可以避免android.os.FileUriExposedException异常,并安全地共享文件给其他应用程序。

相关内容

热门资讯

详情透视!We poker辅助... 详情透视!We poker辅助器下载,微乐自建房辅助工具别人怎么看,妙计教程(有挂辅助)-哔哩哔哩1...
总结透视!wejoker辅助软... 总结透视!wejoker辅助软件价格,微乐自建房免费脚本哪个最好用,指引教程(有人有挂)-哔哩哔哩w...
揭露透视!wepoker破解器... 揭露透视!wepoker破解器,微乐小程序多乐辅助器,教材教程(有挂方略)-哔哩哔哩1、wepoke...
解密透视!pokemmo脚本最... 解密透视!pokemmo脚本最新版,微乐多乐跑作弊,法子教程(有挂细节)-哔哩哔哩1、用户打开应用后...
必备透视!德普之星辅助软件,微... 必备透视!德普之星辅助软件,微乐麻辣自建房辅助视频,资料教程(确实有挂)-哔哩哔哩1、德普之星辅助软...
有挂透视!wepoker辅助分... 有挂透视!wepoker辅助分析器,贵州微乐自建房辅助软件下载,办法教程(存在有挂)-哔哩哔哩1、w...
辅助透视!拱趴大菠萝挂怎么安装... 辅助透视!拱趴大菠萝挂怎么安装,微乐自建房插件如何安装,技法教程(有挂分享)-哔哩哔哩1、完成拱趴大...
开挂透视!pokernow辅助... 开挂透视!pokernow辅助工具,微信微乐辅助ios,阶段教程(有挂技巧)-哔哩哔哩1、进入到po...
了解透视!wpk透视是真的假的... 了解透视!wpk透视是真的假的,微乐自建房脚本下载,机巧教程(存在有挂)-哔哩哔哩在进入wpk透视是...
普及透视!德州透视hhpoke... 普及透视!德州透视hhpoker,微乐小程序免费黑科技在线下载,指南书教程(有挂存在)-哔哩哔哩1、...