Android开发学习安卓杂烩

Android 主程序与libmodule不同FlieProvi

2019-10-29  本文已影响0人  小小程序员jh

本来项目只有一个fileprovider,配置信息是这样的,

 <!-- 7.0文件存储需要配置的部分 -->
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${applicationId}.fileprovider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/filepaths" />
        </provider>

因为引入一个module, 人家的代码是这样的,

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

但是运行出现冲突看到是这个问题,头就很大,根本不知道是什么原因好吧

图片.png
以前也遇到过,但是有些忘记了还是要用搜索引擎,找到了这篇文章
完美解决主工程与lib库的FileProvider冲突
但是自己的项目应该怎么配置还是实际看看吧,按照人家说的试试吧,分为几步:
  1. 创建自定义provider
public class MyFileProvider extends FileProvider {
}
  1. 将主程序的android:name="android.support.v4.content.FileProvider"改成android:name=".MyFileProvider"
 <!-- 7.0文件存储需要配置的部分 -->
        <provider
            android:name=".MyFileProvider"
            android:authorities="${applicationId}.fileprovider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/filepaths" />
        </provider>

然后我们在运行项目就不会有问题了,特此记录,有什么不合理的或者不对的地方请留言,我们一起进步!

上一篇下一篇

猜你喜欢

热点阅读