Android webview 遇到android.os.FileUriExposedException错误解决办法

时间:2022-07-28
本文章向大家介绍Android webview 遇到android.os.FileUriExposedException错误解决办法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Android webview 遇到android.os.FileUriExposedException错误解决办法

1. 在 Manifest 文件中添加:

<manifest ...  
  <application ...  
    <provider 
      android:name="android.support.v4.content.FileProvider" 
      android:authorities="${applicationId}.provider" 
      android:exported="false" 
      android:grantUriPermissions="true"  
      <meta-data 
        android:name="android.support.FILE_PROVIDER_PATHS" 
        android:resource="@xml/provider_paths"/  
    </provider  
  </application  
</manifest  

2. 创建 XML 文件: res/xml/provider_paths.xml

<?xml version="1.0" encoding="utf-8"?  
<paths xmlns:android="http://schemas.android.com/apk/res/android"  
  <external-path name="external_files" path="."/  
</paths 

3. 把获取文件URI代码替换成新的api:

... 
imageUri = Uri.fromFile(createImageFile()); 
 
 
replace with : 
 
 
File file = createImageFile(); 
        imageUri = FileProvider.getUriForFile(mActivity, mActivity.getPackageName() + ".provider", file); 
 
 
... 

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!