Java 清单合并失败:属性application@appComponentFactory之后添加Exoplayer 2.10.5

Java 清单合并失败:属性application@appComponentFactory之后添加Exoplayer 2.10.5,java,android,manifest-merging,Java,Android,Manifest Merging,在我的项目中,在我的app.gradle文件中添加Exoplayer 2.10.5后,我收到以下错误: 我的gradle版本是3.5.2 Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManife

在我的项目中,在我的app.gradle文件中添加Exoplayer 2.10.5后,我收到以下错误:

我的gradle版本是3.5.2

Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
    is also present at [androidx.core:core:1.0.1] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
    Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:25:5-171:19 to override.
这是我的AndroidManifest.xml文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="ir.sabapp.hefzquran">
    ...
    <application
        android:name=".ui.App"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        android:usesCleartextTraffic="true"
        tools:ignore="GoogleAppIndexingWarning,UnusedAttribute">
        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

        //activities ,services , provider
    </application>

</manifest>
有什么问题吗

清单合并失败:属性application@appComponentFactory 值=(android.support.v4.app.CoreComponentFactory)来自 [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91 在[androidx.core:core:1.0.1]AndroidManifest.xml:22:18-86中也有 值=(androidx.core.app.CoreComponentFactory)。 建议:在AndroidManifest.xml:25:5-171:19处的元素中添加“tools:replace=“android:appComponentFactory””以覆盖

我的建议是——转到。通过从菜单栏选择重构>迁移到AndroidX,可以将现有项目迁移到AndroidX

升级到

 classpath 'com.android.tools.build:gradle:3.6.1'//3.6.3
您的
依赖项将

 implementation 'androidx.appcompat:appcompat:1.1.0'
 implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
 implementation 'androidx.legacy:legacy-support-v4:1.0.0'

你试过这个吗?如果不迁移到AndroidX,我如何解决这个问题?@AliSheykhi然后不要使用
com.google.android.exoplayer:exoplayer
。谷歌建议切换AndroidX@AliSheykhi创建一个备份当前项目,然后切换到AndroidXtank man worked!但在应用的某些部分出现了一些问题。比如:无法膨胀行为子类android.support.design.widget.BottomSheetBehavior它将是
“com.google.android.material.bottomsheet.BottomSheetBehavior”
 classpath 'com.android.tools.build:gradle:3.6.1'//3.6.3
 implementation 'androidx.appcompat:appcompat:1.1.0'
 implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
 implementation 'androidx.legacy:legacy-support-v4:1.0.0'