0

所以 Twitter 套件现在不是 Fabric 的一部分,现在是独立的组件。在我想使用之前我没有使用 Twitter 工具包,所以必须包含它的依赖项。但是添加它之后,Fabric 初始化似乎被破坏了。我曾经像这样初始化Fabric

Fabric.with(this, new Crashlytics(), new TwitterCore(authConfig), new Digits.Builder().withTheme(R.style.CustomDigitsTheme).build());

但是现在 Fabric 无法初始化,因为TwitterCore类现在没有从Kit. 基本上 Fabric 的with方法签名是这样的,with(Context context, Kit... kits)但由于TwitterCore不是从 扩展Kitwith方法不会接受它。我尝试TwitterCore从传入方法的套件列表中删除,with但得到了这个异常

io.fabric.sdk.android.services.concurrency.UnmetDependencyException: Referenced Kit was null, does the kit exist?

既然 Twitter Kit 不是 Fabric 的一部分,那么使用 Digits 和 Crashlytics 初始化 Fabric 的正确方法是什么?有人可以提供片段吗?它不被接受TwitterCoreKit我想这就是引发异常的原因。

4

1 回答 1

0

来自 Fabric 的 Mike。这是我在 Swift 和 Obj-c 中初始化 Crashlytics 和 Digits 的方法。请注意,Digits 将被 Firebase Auth 取代,并且自 9 月 30 日起将不再工作。您应该迁移到 Firebase Auth 或其他服务,并在此之前发布

爪哇:

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        Fabric.with(this, new Crashlytics(), new Digits());
        setContentView(R.layout.activity_main);
    }
}

迅速:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    Fabric.with([Crashlytics.self, Digits.self])

    return true
}

对象-C:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [Fabric with:@[[Crashlytics class], [Digits class]]];
    //[self logUser];

    return YES;
}
于 2017-09-11T13:06:07.087 回答