Rocky_ruan 2021-03-15 17:13 采纳率: 20%
浏览 375
已采纳

FileProvider配的路径是干什么用的,<root-path>路径干什么的

String path=Environment.getExternalStorageDirectory().toString()+File.separator+"forpermission"+File.separator+fileName+".jpg";
File imageFile=new File(path);
Uri uri= FileProvider.getUriForFile(ThirdActivity.this,"com.ruan.testw.my_provider",imageFile);

这里传入的路径是sd卡下的forpermission文件夹下

<provider
    android:name="androidx.core.content.FileProvider"
    android:authorities="com.ruan.testw.my_provider"
    android:exported="false"
    android:grantUriPermissions="true">
    <meta-data
        android:name="android.support.FILE_PROVIDER_PATHS"
        android:resource="@xml/file_paths" />
</provider>
<paths>
 
    <external-path
        name="camera_photo"
        path="forpermission"/>
</paths>

这个传入的路径也是这个文件夹下的不会报错

如果我传入其他文件夹或报错但是我要是配置了root-path路径就不会报错

<paths>
    <root-path
        name="root"
        path=""/>
    <external-path
        name="camera_photo"
        path="aa/forpermission"/>
</paths>
  • 写回答

1条回答 默认 最新

  • 蛋糕店筹备中 2021-03-15 17:18
    关注
    <root-path/> 代表设备的根目录new File("/");//很少用
    //app内部存储
    <files-path/> 代表context.getFilesDir()
    <cache-path/> 代表context.getCacheDir()
    //sd卡存储
    <external-path/> 代表Environment.getExternalStorageDirectory()
    <external-files-path>代表context.getExternalFilesDirs()
    <external-cache-path>代表getExternalCacheDirs()
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程