美文网首页
Firebase集成和json配置(2022/11/21)

Firebase集成和json配置(2022/11/21)

作者: 孤縌 | 来源:发表于2022-11-20 15:25 被阅读0次

官方文档:https://firebase.google.com/docs/android/setup?hl=zh-cn

项目创建

链接地址:https://console.firebase.google.com/?hl=zh-cn

image

应用注册

输入包名、SHA-1

image

SHA-1还可以通过gradle获取

image image

下载配置文件

json文件,文件中存在着对应的应用id,如果想区分debug和正式版本,可以通过配置不同目录来实现

常见目录:app/src/google-services.json

debug目录:app/src/debug/google-services.json

Release目录:app/src/release/google-services.json

image

gralde的配置:

通过debuggable true,就能让其访问app/src/debug目录,因此就可以通过配置不同key的SHA-1,来得到不同的json,由此能实现其正式或非正式包的区分,这样采集的奔溃和信息就会到不同的项目中去。

    buildTypes {
        release {
            debuggable false
            //是否混淆
            minifyEnabled true
            //压缩资源,必须开启minifyEnabled才有用
            shrinkResources true
            //优化对齐,可以减少apk内存使用
            zipAlignEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.typhur
        }
        debug {
            debuggable true
            //是否混淆
            minifyEnabled false
            //压缩资源,必须开启minifyEnabled才有用
            shrinkResources false
            //优化对齐,可以减少apk内存使用
            zipAlignEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.typhurDebug
        }
    }

配置不同key

signingConfigs {
    typhurDebug {
        storeFile file('xxxx_debug.jks')
        storePassword 'xxxx'
        keyAlias 'xxxx_debug'
        keyPassword 'xxxx'
    }
    typhur {
        storeFile file('xxxx.jks')
        storePassword 'xxxx'
        keyAlias 'xxxx'
        keyPassword 'xxxx'
    }
}

集成Firebase SDK

project/gradle

// 新版gradle的写法,与classpath相同
plugins {
    id 'com.android.application' version '7.2.2' apply false
    id 'com.android.library' version '7.2.2' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.10' apply false

    //谷歌服务
    id 'com.google.gms.google-services' version '4.3.14' apply false
    //firebase崩溃分析
    id 'com.google.firebase.crashlytics' version '2.8.1' apply false
    //性能分析
    id 'com.google.firebase.firebase-perf' version '1.4.1' apply false
}

默认情况下,都需要集成服务、分析、性能分析这几项

app/gradle目录

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
    id 'com.google.gms.google-services'
    id 'com.google.firebase.crashlytics'
    id 'com.google.firebase.firebase-perf'
}
dependencies {
    // bom库,可确保您的应用使用的始终是 Firebase Android 库的兼容版本
    api platform('com.google.firebase:firebase-bom:30.5.0')
    //谷歌分析
    api 'com.google.firebase:firebase-analytics-ktx'
    //性能分析
    api 'com.google.firebase:firebase-perf-ktx'
    //崩溃收集
    api 'com.google.firebase:firebase-crashlytics-ktx'
}

AndroidManifest

<application>
    <!--谷歌核心库读取版本所需配置-->
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <!--性能分析日志-->
    <meta-data
        android:name="firebase_performance_logcat_enabled"
        android:value="true" />
</application>

Application

override fun onCreate() {
    super.onCreate()
    //初始化firebase
    FirebaseApp.initializeApp(this)
}

校验

image

Firebase使用

链接:https://console.firebase.google.com/project

基本数据查看

选择对应项目,就可以查看到该项目的日活数据等

image

奔溃问题查看

image

可以查看到所有的崩溃问题,主要是关闭debug包开发中的问题,release可以通不过不同项目,依此来区分是否来源于正式包的崩溃。

image

问题页面,如果已修复完成,则可以关闭

事件埋点

image

firebase的常用事件,使用方式为动态代码埋点方式

相关文章

网友评论

      本文标题:Firebase集成和json配置(2022/11/21)

      本文链接:https://www.haomeiwen.com/subject/lbdwxdtx.html