Android应用程序崩溃的原因是android.os.FileUriExposedException
创始人
2024-10-12 22:00:31
0

在Android中,如果你在Android 7.0(API级别24)或更高版本中使用了file://URI来共享文件,就会发生android.os.FileUriExposedException异常。这是由于Android 7.0引入了一项安全性更新,要求你使用文件共享时使用FileProvider来生成一个content:// URI。

下面是一个解决方法,使用FileProvider来解决android.os.FileUriExposedException异常的问题。

  1. AndroidManifest.xml文件中,添加一个FileProvider的声明,如下所示:


    
        ...

        
            
        

        ...
    


  1. res/xml文件夹中创建一个file_paths.xml文件,内容如下所示:

    

这个file_paths.xml文件定义了你要共享的文件路径。在这个例子中,我们使用了外部存储的根目录。

  1. 在你的代码中,使用FileProvider.getUriForFile()方法来获取文件的content:// URI,如下所示:
File file = new File(filePath);
Uri fileUri = FileProvider.getUriForFile(context, context.getPackageName() + ".provider", file);

这个例子中,filePath是你要共享的文件的路径,context是当前的上下文对象。

  1. 如果你要传递这个URI给其他应用程序,需要添加Intent.FLAG_GRANT_READ_URI_PERMISSION标志,如下所示:
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.createChooser(intent, "Share Image"));

这个例子中,我们使用了ACTION_SEND动作来共享文件,fileUri是我们之前获取的URI。

通过这种方式,你就可以在Android应用程序中解决android.os.FileUriExposedException异常,并且可以安全地共享文件。

相关内容

热门资讯

不少玩家反映!衢州都莱辅助器免... 不少玩家反映!衢州都莱辅助器免费下载!好像确实有开挂辅助挂(有挂教学)-哔哩哔哩1、用户打开应用后不...
教学辅助挂!透视辅助工具!原来... 教学辅助挂!透视辅助工具!原来真的有开挂辅助app(有挂分析)-哔哩哔哩1、透视辅助工具免费辅助多个...
做出回应!仙桃晃晃辅助器!其实... 做出回应!仙桃晃晃辅助器!其实是真的有开挂辅助教程(新版有挂)-哔哩哔哩1、许多玩家不知道仙桃晃晃辅...
值得注意的是!决战卡五星最新辅... 值得注意的是!决战卡五星最新辅助!真是确实有开挂辅助方法(证实有挂)-哔哩哔哩1、值得注意的是!决战...
黑科技攻略!浙江宝宝游戏辅助器... 黑科技攻略!浙江宝宝游戏辅助器是真的嘛!真是真的是有开挂辅助脚本(有挂秘诀)-哔哩哔哩1、打开软件启...
刚刚!余干五十k攻略!切实确实... 刚刚!余干五十k攻略!切实确实有开挂辅助教程(竟然有挂)-哔哩哔哩1、超多福利:超高返利,海量正版游...
2026版攻略!川南九九辅助!... 2026版攻略!川南九九辅助!一直确实有开挂辅助攻略(有挂解密)-哔哩哔哩1)川南九九辅助免费钻石:...
此事迅速冲上热搜!哥哥打大a有... 此事迅速冲上热搜!哥哥打大a有没有辅助!一贯是真的有开挂辅助脚本(有挂秘籍)-哔哩哔哩1、该软件可以...
2026版规律!约局吧透视辅助... 2026版规律!约局吧透视辅助ios下载!一直真的有开挂辅助技巧(今日头条)-哔哩哔哩约局吧透视辅助...
2026版辅助挂!胡乐辅助脚本... 2026版辅助挂!胡乐辅助脚本是真的假的!切实真的是有开挂辅助app(有挂透视)-哔哩哔哩进入游戏-...