1

我正在尝试迁移到 AndroidX,我们在项目中使用了这个库。但是,这目前在我们的项目中导致了一个问题:

无法解析 ':module@buildType/compileClasspath' 的依赖关系:无法使用转换 JetifyTransform 转换文件 'localytics-1.3.0.aar' 以匹配属性 {artifactType=processed-aar}

删除库会使此问题消失。是否有任何解决方法可以让我迁移到 AndroidX 直到迁移这个库?

根据文档:https ://developer.android.com/jetpack/androidx/migrate

我已经更新了我的 gradle.properties。问题不在于设置,问题在于 localytics 似乎不支持 androidX。如果有人知道,我想确认这一点,因为与他们联系会导致没有答案(他们的客户服务很差)。

在此处输入图像描述

4

3 回答 3

3

有人在Github上贴了一个补丁:

  1. 克隆存储库。
  2. 将 analytics-android-integration-localytics 项目更新为最新的 Android 更新,包括 AndroidX。生成 jar 文件而不是 aar 文件。(这是这里的获胜项目。它必须是一个 jar 文件才能工作。无论如何都不需要 aar 文件,因为该项目的 aar 文件中没有任何资源。)
  3. 删除消费项目中现有的 Maven 依赖项。
  4. 将 jar 文件作为新模块导入到使用项目中。
  5. 重建消费项目。
于 2019-09-17T00:29:47.343 回答
1

如果 jetfier 不在该库上工作,我认为您可以尝试一些解决方法,例如:

  • 更新库(v1.3.0 是该 AAR 的最新版本吗?)

  • 整体禁用 jetfier(设置android.enableJetifier=falsegradle.properties

  • 仅通过以下方式禁用该库上的 jetfier:

gradle.properties

android.enableJetifier=true
android.jetifier.blacklist = .*localytics.*
android.useAndroidX=true

最后一个选项需要 Android Gradle 插件版本

于 2019-09-17T00:17:04.960 回答
1

首先请在 gradle.properties 中添加以下行

android.useAndroidX=true

android.enableJetifier=true

你能分享你的 build.gradle 吗?可能会有另一个问题。请像这样更新以下本地化库。

类路径 'io.fabric.tools:gradle:1.25.1' 到

classpath 'io.fabric.tools:gradle:1.27.0'
于 2019-09-16T23:47:34.050 回答