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

问题描述 投票:41回答:2

正在寻求帮助。我刚刚将我的android应用程序升级到了fabric,现在该应用程序在此行显示错误:

Crashlytics.start(getApplicationContext());

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

我尝试注释掉该行,但是崩溃没有被记录下来。如何在新的架构框架中初始化Crashlytics?我想念什么吗?

感谢您的帮助。

android crashlytics twitter-fabric
2个回答
84
投票

由于Crashlytics现在是Fabric的一部分,所以初始化过程已更改,但仍然很简单。现在应该使用而不是使用Crashlytics.start(),而是在创建应用程序

中使用
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


0
投票

最新版本的初始化是由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)
© www.soinside.com 2019 - 2024. All rights reserved.