📜  崩溃系统 (1)

📅  最后修改于: 2023-12-03 14:53:57.842000             🧑  作者: Mango

崩溃系统介绍

简介

崩溃系统,又称为Crash Reporting System,是一种用于收集应用程序崩溃信息并分析的工具。当程序出现崩溃时,崩溃系统会自动收集崩溃信息并发送到远程服务器,程序员可以通过分析这些信息来了解程序崩溃的原因,从而修复程序bug。

崩溃信息包含
  1. 崩溃时间
  2. 崩溃类型
  3. 崩溃原因
  4. 堆栈信息
  5. 设备信息
  6. 应用程序版本号
  7. 用户ID
  8. 用户操作记录
  9. 其他相关信息
使用崩溃系统的好处
  1. 可以及时发现程序的问题,提高程序质量。
  2. 可以快速定位和解决问题,提高开发效率。
  3. 可以提高用户体验,降低用户流失率。
常见的崩溃系统
  1. Fabric
  2. Bugsnag
  3. Sentry
  4. Crashlytics
  5. ACRA
如何集成崩溃系统

以Crashlytics为例,简单介绍一下集成流程:

  1. 在Crashlytics官网注册一个账号,并创建一个新的项目。
  2. 在项目设置页面里获取API Key和Build Secret。
  3. 在项目的build.gradle文件中添加以下代码:
buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.google.gms:google-services:3.1.1'
        classpath 'io.fabric.tools:gradle:1.28.0'
    }
}

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

...

repositories {
    maven { url 'https://maven.fabric.io/public' }
}

dependencies {
    implementation('com.crashlytics.sdk.android:crashlytics:2.10.1@aar') {
        transitive = true
    }
}

apply plugin: 'com.google.gms.google-services'
  1. 在Application类的onCreate方法中添加以下代码:
Fabric.with(this, new Crashlytics());
  1. 最后,在build.gradle文件中添加以下代码,以确保编译时上传debug信息:
crashlytics {
    enableNdk true
    androidNdkOut 'build/intermediates/ndkBuild/debug/obj'
    androidNdkLibsOut 'build/intermediates/ndkBuild/debug/lib'
}
参考文献
  1. https://en.wikipedia.org/wiki/Crash_reporting_system
  2. https://fabric.io/kits/android/crashlytics