android – 从Crashlytics SDK迁移到Fabric后构建错误

最近,我们已经将我们组织的Crashlytics帐户升级到Fabric,而我正在使用现有应用程序中的新Fabric SDK替换旧的Crashlytics SDK.我已经遵循了 the migration instructions,而且大部分都是无痛的,只是当我尝试编译时,我正在收到一个构建错误.引起错误的问题是引导调用
Fabric.with(this,new Crashlytics());

正在返回的错误是:

Error:(55,11) error: no suitable method found for with(MyActivity,Crashlytics)
method Fabric.with(Fabric) is not applicable
(actual and formal argument lists differ in length)
method Fabric.with(Context,Kit...) is not applicable
(argument type Crashlytics does not conform to vararg element type Kit)

显然,由于某种原因,新的Crashlytics()不被认为是与(Context,Kit …)方法有效的参数.

只是为了排除与方法调用的vararg性质有关的东西,我也尝试使用多个工具包(例如Fabric.with(这是新的Crashlytics(),新的MoPub())),并且完全相同的错误是还是回来了

最后,我尝试将调用移到我的Application子类的onCreate()方法,这也没有帮助.

build.gradle的相关章节:

buildscript {
  repositories {
    maven { url 'https://maven.fabric.io/public' }
  }

  dependencies {
    classpath 'io.fabric.tools:gradle:1.+'
  }
}

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
  maven { url 'https://maven.fabric.io/public' }
}

dependencies {
  compile filetree(dir: 'libs',include: '*.jar')
  ...
  compile('com.crashlytics.sdk.android:crashlytics:2.2.1@aar') {
    transitive = true;
  }
}

我还验证了Fabric插件是否正确安装和正常工作,并且不再安装旧的Crashlytics插件

解决方法

事实证明,旧的Crashlytics JAR仍然隐藏在我的libs文件夹中,删除它后,这个错误就不再存在了.

我觉得有点头痛,但我会留下来帮助那些遇到同样问题的未来的Google员工.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...