5
1

More than 1 year has passed since last update.

Unity AndroidアプリでFirebase Crashlyticsを使うのにハマった話

Posted at

この記事について

UnityでAndroidアプリにFirebase Crashlyticsを利用する際、ハマった部分をまとめました。

バージョン

Unity 2021.3.11f1
firebase unity sdk 9.6.0

事象

Firebaseドキュメントに沿ってアプリを作成し、実行したところ、adb logcatでなんかエラーが出た:boom:
(ビルドのタイミングで出て欲しい:sweat_drops:

10-17 15:19:00.821 17474 17552 E firebase: Failed to read Firebase options from the app's resources. Either make sure google-services.json is included in your build or specify options explicitly.

いきなり結論

Unity 2020.1以降ではFirebaseドキュメント通りのやり方ではFirebaseは動かない:bangbang:
Unity 2019を使ってね、とFirebase blogでは言っている。

Unity 2020.1以降での作業

前提として、Firebaseドキュメントの作業は完了しているものとします

Unity 2020.1以降でFirebaseを使えるようにする

ビルド設定 -> プレイヤー設定でプレイヤーを開く
プレイヤー -> 公開設定で

  • カスタムメイン Gradle テンプレート
  • カスタム Gradle プロパティテンプレート

へチェックボックスを入れる

Assets/Plugins/Android/mainTemplate.gradleの末尾に以下を追記する

android {
    sourceSets {
        main {
            def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("", "/")
            res.srcDirs += (unityProjectPath +  '/Assets/Plugins/Android/Firebase/res/values/google-services.xml')
        }
    }
} 

Assets/Plugins/Android/gradleTemplate.propertiesの末尾に以下を追記する

android.useAndroidX=true
android.enableJetifier=true 

Crashlyticsを使えるようにする追加作業

ビルド設定 -> プレイヤー設定でプレイヤーを開く
プレイヤー -> 公開設定で

  • カスタムランチャー Gradle テンプレート
  • カスタムベース Gradle テンプレート

へチェックボックスを入れる

Assets/Plugins/Android/baseProjectTemplate.gradleallprojects.buildscript.dependenciesに以下を追記する

// Add the Crashlytics Gradle plugin.
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0'

Assets/Plugins/Android/launcherTemplate.gradleの末尾に以下を追記する

// Apply the Crashlytics Gradle plugin
apply plugin: 'com.google.firebase.crashlytics' 

最後に

Assetフォルダへgoogle-services.jsonの配置確認(私の環境ではいつの間にか消えていました)
Unityを再起動(大事:bangbang:

参考

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1