【发布时间】:2015-02-24 17:07:50
【问题描述】:
最近,我们已将组织的 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)
显然,由于某种原因,new Crashlytics() 未被识别为 with(Context,Kit...) 方法的有效参数。
为了排除与方法调用的可变参数性质特别相关的问题,我还尝试了不止一个工具包(例如Fabric.with(this, new Crashlytics(), new 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 插件:
【问题讨论】:
标签: android crashlytics twitter-fabric