Manifest merger failed with multiple errors, see logs

如有不对的地方,望各位小哥哥、小姐姐指导,小女子在此谢过(*^__^*) 嘻嘻……

今天我在接入第三方sdk的时候遇到的一个问题,当我根据第三方的文档配置好所有的文件后运行时报错

一、先看一下报错信息

Manifest merger failed with multiple errors, see logs

根据报错信息可以看到,说的是AndroidManifest.xml有错误,但是这里是没有显示具体的错误在哪的

二、找出具体报错的地方

Manifest merger failed with multiple errors, see logs

 

Manifest merger failed with multiple errors, see logs

 

Manifest merger failed with multiple errors, see logs

 

我这里的错误是因为我在xml配置了两次provider,android.support.v4.content.FileProvider,

 

Manifest merger failed with multiple errors, see logsManifest merger failed with multiple errors, see logs

 

这就是我xml里面配置的两个一样的,只是引用得resource不一样

provider.xml

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

</paths>

gdt_file_path.xml

<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 这个下载路径不可以修改,必须是 GDTDOWNLOAD -->
    <external-path
        name="gdt_sdk_download_path"
        path="GDTDOWNLOAD" />
    <external-path
        name="ext_root"
        path="AdPoymerDownLoad/" />

</paths>

 

 当时配置的时候也是直接复制文档的 所有没有注意到这个,

既然第三方的也需要配置provider  v4,那么我们只能是合并咯

我这里是吧gdt_file_path.xml里面的内容合并到我自己的provider.xml里面

合并后的provider.xml

<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
      
    <external-path
        name="external_files"
        path="." />
    <external-path
        name="download"
        path="." />
    <external-path
        name="pick_camera"
        path="DCIM" />
    <!-- 这个下载路径不可以修改,必须是 GDTDOWNLOAD -->
    <external-path
        name="gdt_sdk_download_path"
        path="GDTDOWNLOAD" />
    <external-path
        name="ext_root"
        path="AdPoymerDownLoad/" />

</paths>

然后删除多余的,保留一个配置就可以了

 <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="com.mobivans.onestrokecharge.fileprovider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/provider" />
        </provider>

再次运行就可以啦

 

如果有用,记得点个赞哦(*^__^*) 嘻嘻……