首页 > 解决方案 > Play Services Analytics 是否与 Gradle 3.3/AndroidX 兼容?

问题描述

当遇到我的 Android Gradle 插件依赖项(从 3.2.1 -> 3.3.x)时,我开始看到这个问题:

D8: Program type already present: android.support.v4.media.RatingCompat$1

此类位于:com.android.support:support-media-compat 正如此处所建议的那样https://developer.android.com/jetpack/androidx/migrate我已向 lib: 的 AndroidX 版本添加了显式依赖项androidx.media:media

这不起作用(同样的问题)。

然后我做:

gradlew app:dependencies

我看到这com.android.support:support-media-compat是一个来自com.google.android.gms:play-services-analytics(16.0.7,我知道的最新版本)的传递依赖。

我也试过排除传递依赖:

implementation ('com.google.android.gms:play-services-analytics:16.0.7') {
    exclude group: 'com.android.support', module: 'support-v4'
}

但这不起作用(support-v4 依赖项仍然显示为传递依赖项)。

我的版本

  1. com.android.tools.build:gradle:3.3.1
  2. 摇篮 5.2.1

梯度属性:

android.useAndroidX=true
android.enableJetifier=false

有什么建议么?

标签: androidandroid-gradle-plugingoogle-play-servicesandroidx

解决方案


你应该设置:

android.enableJetifier=true

以便为您转换传递依赖项。


推荐阅读