如何在Fabric.io中初始化Crashlytics?

时间:2014-10-23 19:02:09

标签: android crashlytics twitter-fabric

寻求一些帮助。我刚刚将我的Android应用程序升级到结构,现在应用程序在这一行上出错:

Crashlytics.start(getApplicationContext());

Gradle: error: cannot find symbol method start(Context)

我尝试评论该行,但随后崩溃未被记录。如何在新的结构框架中初始化Crashlytics?我错过了什么吗?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:82)

由于Crashlytics现在是Fabric的一部分,初始化过程已经改变,但仍然很简单。您现在应该使用Crashlytics.start(),而不是使用{strong>应用程序创建:

public class App extends Application {

    ...

    @Override
    public void onCreate() {
        super.onCreate();
        Fabric.with(this, new Crashlytics());
    }

    ...

}

有关更丰富的示例,请参阅Cannonball规范示例应用程序的操作:

public class App extends Application {

    ...

    private TwitterAuthConfig authConfig;

    ...

    @Override
    public void onCreate() {
        super.onCreate();
        authConfig = new TwitterAuthConfig(BuildConfig.CONSUMER_KEY, BuildConfig.CONSUMER_SECRET);
        Fabric.with(this, new Crashlytics(), new Twitter(authConfig), new MoPub());
    }

    ...

}

此代码位于:https://github.com/twitterdev/cannonball-android/blob/master/app/src/main/java/io/fabric/samples/cannonball/App.java#L96-L98

答案 1 :(得分:1)

在最新版本中,ContentProvider会自动完成初始化 https://firebase.google.com/docs/crashlytics/upgrade-sdk?platform=android

 import com.google.firebase.crashlytics.FirebaseCrashlytics

// ...

// Explicit initialization of Crashlytics is no longer required.

// OPTIONAL: If crash reporting has been explicitly disabled previously, add:
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)