我按照文档中的所有步骤在我的Android应用中使用Firebase崩溃报告(我使用Android Studio,一切都是最新的) .
我使用自己的代码抛出一个异常,看它是否有效:
try {
throw new NullPointerException();
} catch (NullPointerException ex) {
FirebaseCrash.logcat(Log.ERROR, TAG, "NPE caught");
FirebaseCrash.report(ex);
}
控制台给我这个日志:
E / MainActivity:NPE捕获V / FirebaseCrash:禁用Firebase崩溃报告 .
这是一个build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0'
// Firebase - Google Services 3.0.0
classpath 'com.google.gms:google-services:3.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
这是另一个build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 'android-N'
buildToolsVersion '24.0.0-rc2'
defaultConfig {
applicationId "com.app.test"
minSdkVersion 19
targetSdkVersion 'N'
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
useProguard true
}
}
}
dependencies {
compile 'com.android.support:support-v4:24.0.0-alpha1'
compile 'com.android.support:appcompat-v7:24.0.0-alpha1'
compile 'com.android.support:design:24.0.0-alpha1'
compile 'com.google.firebase:firebase-core:9.0.0'
compile 'com.google.firebase:firebase-analytics:9.0.0'
compile 'com.google.firebase:firebase-crash:9.0.0'
compile 'com.google.firebase:firebase-messaging:9.0.0'
compile 'com.google.firebase:firebase-config:9.0.0'
compile 'com.google.firebase:firebase-invites:9.0.0'
compile 'com.google.android.gms:play-services-appindexing:9.0.0'
}
apply plugin: 'com.google.gms.google-services'
我也用:
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
FirebaseMessaging.getInstance().subscribeToTopic("news");
Log.d(TAG, "Subscribed to news topic");
我添加了我需要的所有依赖项,但我逐个添加并逐个测试,Notifications工作,分析:不知道,更新需要大约24小时,所以直到它,我不知道是否正在工作......
那么,问题是如何启用它?
注意:我添加了所有 dependencies ,包括 crash 和 core ,还有 plugin 和 classpath
先谢谢你 .
4 回答
请注意以下事项:
FirebaseCrash.report(new Exception("My first Android non-fatal error"));
错误最多需要20分钟才能显示在崩溃报告控制台中 . 请回来查看您的报告 .
(看起来很明显但是)确保你拥有:
INTERNET and ACCESS_NETWORK_STATE
权限 .在我的应用程序中正确设置崩溃报告后,崩溃报告也无法正常工作 . 为了解决这个问题,我访问了我的开发人员控制台API Manager,并启用了"Mobile Crash and Performance Reporting API" . 要确切了解您需要执行此操作的位置,请按照this page.上的步骤操作
如果您按照上面链接中的步骤操作,则具有文本“E / FirebaseCrashSenderServiceImpl:错误发送崩溃报告”的logcat会为您提供一个URL,指示您必须在控制台中启用崩溃报告的位置 .
Add following code: 在项目级build.gradle(/build.gradle)中:
在App-level build.gradle(//build.gradle)中:
现在同步您的项目,在您的活动中使用以下代码来抛出异常:
使用firebase检查android crash reporting教程以获得完整指导 .
我遇到过同样的问题 . 事实证明我在项目gradle文件中缺少依赖项 . 尝试添加此功能 . 它应该有所帮助 .