[英]Reproduced months ago with old apps and new: Crashlytics was not reporting crashes in old apps or registering my new apps
更新:不再需要此问题,因为它超出了 SOW 的范围。 我已经投票决定它应该关闭。 请注意,已经进行了一些研究以找出答案,我已经接受了。 发布此问题几周后,Crashlytic 中出现了一些问题。 我和 Crashlytics 的一个人聊天,他回答说我使用的版本有问题。
在这三个月的时间里,当我报告这个问题时,我已经有了 30 天前在另一个应用程序中报告的最新崩溃。 我让力再次崩溃(在那些以前的应用程序中,它正在工作)。 CrashLytics DashBoard 没有报告这些强制崩溃,更重要的是新应用程序也没有注册。
下面的代码没有问题,几周后一切又好了。
我在我的 Android Studio 中使用 Fabric 插件,Gradle 版本 3.1.3。
更多细节:
Crashlytics 插件:
buildscript {
repositories {
google()
jcenter()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
// These docs use an open-ended version so that our plugin
// can be updated quickly in response to Android tooling updates
// We recommend changing it to the latest version from our changelog:
// https://docs.fabric.io/android/changelog.html#fabric-gradle-plugin
classpath 'com.android.tools.build:gradle:3.1.3'
classpath 'io.fabric.tools:gradle:1.25.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
maven { url 'https://maven.fabric.io/public' }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
依赖:
implementation('com.crashlytics.sdk.android:crashlytics:2.9.4@aar') {
transitive = true;
}
和
implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
implementation 'com.android.support:design:28.0.0-alpha1'
implementation 'com.android.support:support-v4:28.0.0-alpha1'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
应用程序版本:
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.mypackage"
minSdkVersion 16
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
在我的应用程序 [派生和清单注册] 类的 onCreate 方法中:
final Fabric fabric = new Fabric.Builder(this)
.kits(new Crashlytics())
.debuggable(true)
.build();
Fabric.with(fabric);
如果有人遇到过这个问题,他或她可以从帖子的答案中找到很大的帮助。
当您使用 Android Studio 时,这些步骤可能会使您从最奇怪的构建相关问题中恢复过来:
project.rootdir
和project/app
构建缓存,然后导入再次项目到 Studiojava/manifest/build.gradle(s)
复制到另一个位置。在 Android Studio 中创建一个具有相同配置的新项目。完成后,<meta-data android:name="io.fabric.ApiKey" android:value="....." />
)fabric.properties
导入rootdir/app
。不仅如此,新应用程序也未注册
为什么不使用您的辅助电子邮件打开另一个 Fabric 帐户并进行测试?
也许不合逻辑,但你能试试 Gradle 3.1.2 版吗? 在将 Gradle 从 3.1.3 降级到 3.1.2 时,我还修复了一些错误(与构建相关的奇怪问题)
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
}
而且,如果您只使用 Crashlytics,那么为什么要进行这种复杂的实现? 这个单一的片段也将使你的工作。
Fabric.with(this, new Crashlytics());
刚刚找到你的问题所在!
快速这样做:
implementation('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
transitive = true
}
我用2.6.8进行了测试,希望崩溃有效,但 2.9.4 没有响应! 该错误存在于 2.9.4! 2.6.8 拥有所有可用的功能。 不过,您也可以填写错误报告。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.