[Android] 该文件包与具有同一名称的现有文件包存在冲突

Posted danfengw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Android] 该文件包与具有同一名称的现有文件包存在冲突相关的知识,希望对你有一定的参考价值。

1、[android] 该文件包与具有同一名称的现有文件包存在冲突
出现这种情况有2方面原因

一方面是你代码里确实有问题,可能出现了
INSTALL FAILED CONFLICTING PROVIDER,这样的提示(再你手机链接as情况下)
这个问题其实本质就是手机里已经安装有同名的Provider的APK了.

<provider
    android:name="android.support.v4.content.FileProvider"
    android:authorities="com.xxx.fileprovider"    <!--问题所在,Provider的名字忘记换了-->
    android:grantUriPermissions="true"
    android:exported="false">
    <meta-data
        android:name="android.support.FILE_PROVIDER_PATHS"
        android:resource="@xml/file_paths" />
</provider>

最好的解决方法是将包名部分替换$applicationId,如下

<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/provider_paths" />
        </provider>

第二种情况是之前的应用下载的不够彻底,解决方法:

魅族手机(Flyme7):卸载App-设置-指纹、面部和安全-访客模式-开启访客模式-清除访客数据-重新安装 

其他手机:卸载App-重新安装

实在不行就需要 adb uninstall +包名 (只使用你测试的过程中)

以上是关于[Android] 该文件包与具有同一名称的现有文件包存在冲突的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 该文件包与具有同一名称的现有文件包存在冲突

该文件包与具有统一名称的现有文件包存在冲突

标题与标准标题具有相同名称但大小写不同的问题

Firebase云消息传递FCM构建错误无法添加任务':processDebugGoogleServices'作为具有该名称的任务已存在

重命名现有文件名

在 Android Studio 中使用新名称复制现有项目