【问题标题】:Running Firebase-Auth + Firebase-UI alongside Crashlytics与 Crashlytics 一起运行 Firebase-Auth + Firebase-UI
【发布时间】:2017-11-27 06:17:54
【问题描述】:

我按照Firebase Auth UI page 中的步骤操作,以便在我的 Android 应用中与电话号码验证提供商一起使用 Firebase 身份验证插件解决方案。我在我的项目中使用 Crashlytics,并且我正在从 Digits 迁移到 Firebase,所以这是 gradle 文件的相关部分:

// firebase dependencies
compile 'com.google.firebase:firebase-auth:11.0.1'
compile 'com.firebaseui:firebase-ui-auth:2.0.1'
compile 'com.firebase:digitsmigrationhelpers:0.1.1'
compile 'com.google.android.gms:play-services-auth:11.0.1'

// crashlytics
compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
    transitive = true;
}

// digits (to be removed after migration is complete)
compile('com.digits.sdk.android:digits:2.0.2@aar') {
    transitive = true;
}

这就是我初始化 Fabric 的方式:

if (Constants.DEBUG)
    Fabric.with(context, new TwitterCore(authConfig), new Digits.Builder().withTheme(R.style.CustomDigitsTheme).build());
else
    Fabric.with(context, new TwitterCore(authConfig), new Digits.Builder().withTheme(R.style.CustomDigitsTheme).build(), new Crashlytics());

但是,当 Constants.DEBUG 为真时,我在 gradle 同步时收到以下错误(删除 Fabric init 中的 Digits 对象对此问题没有任何影响):

Error:Execution failed for task ':app:fabricGenerateResourcesDebug'.
> Crashlytics Developer Tools error.

(这里是pastebin of the stacktrace

删除 Crashlytics 依赖项可暂时解决此问题。是否存在依赖冲突或者这是一个错误?

在我的项目中,我只有 crashlytics.properties 文件设置了相应的键(不是 fabric.properties 文件)。在将此依赖项添加到我的应用程序的模块 gradle 文件之前,我没有出现错误。

更新:我之前说过删除 Crashlytics 依赖解决了这个问题,但它实际上是 'com.firebaseui:firebase-ui-auth:2.0.1'包含在 gradle 文件中时产生错误的依赖项。

更新 2:感谢所有发表评论的人。研究堆栈跟踪输出,我发现更具描述性的错误是:

java.lang.IllegalArgumentException: Crashlytics found an invalid API key: @string/twitter_consumer_secret.

我会对此进行调查,尽管在我看来这个错误是由 'com.firebaseui:firebase-ui-auth:2.0.1' 依赖项特别触发的.

【问题讨论】:

标签: android firebase firebase-authentication crashlytics firebaseui


【解决方案1】:

firebase-ui-auth 存储库已更新,这不再是问题。以下 build.gradle sn-p 适用于我:

// firebase stuff
compile 'com.google.firebase:firebase-auth:11.2.0'
compile 'com.firebaseui:firebase-ui-auth:2.3.0'
compile 'com.firebase:digitsmigrationhelpers:0.1.1'
compile 'com.google.android.gms:play-services-auth:11.2.0'
compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
    transitive = true;
}

【讨论】:

    猜你喜欢
    • 2019-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-14
    • 2016-05-07
    相关资源
    最近更新 更多