📊

Flutter Google Analytics エラー解消

2022/12/05に公開

背景

Flutter&Firebaseは言うまでもなくよくみる構成になり、
FlutterFire 公式の FlutterFire CLIという便利なツールまでもが登場している。
https://firebase.flutter.dev/docs/cli/


しかし、現在(2022/12/5)FlutterFire CLIによってFirebaseの設定を行うと、
AndroidでGoogle Analyticsが正常に動作しない問題が発生している。

出力されるエラーは以下のようなもの

Missing google_app_id. Firebase Analytics disabled. See "https://goo .gl/NAOOOI"

iOS上では問題なく動作しているGoogle AnalyticsがAndroidではうまく動作しない。
(逆はよくあるのに…)

解決方法

とりあえず解決方法だが、Firebaseのドキュメント通りにandroid/app/build.gradleandroid/build.gradleを設定すればうまくいった。

android/app/build.gradle
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services' // ここを追加
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

===省略===

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation platform('com.google.firebase:firebase-bom:31.1.0') // ここを追加
    implementation 'com.google.firebase:firebase-analytics-ktx' // ここを追加
}

android/build.gradle
buildscript {
    ext.kotlin_version = '1.6.10'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:7.1.2' // ここを追加
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" 
        classpath 'com.google.gms:google-services:4.3.13' // ここを追加
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

原因

原因は至ってシンプル

少し調べてみると、FlutterFire CLIによって自動で設定されるモノの中に
Google Analyticsを動かすのに必要な設定が足りていなかった。

Githubのissueでも少しだけ議論されていたのでFlutterFire CLIのアップデートに期待したい
https://github.com/chemerisuk/cordova-plugin-firebase-analytics/issues/13


参考
https://stackoverflow.com/questions/56455720/get-error-missing-google-app-id-firebase-analytics-disabled

Discussion