[Android]「Default Firebaseapp Is Not Initialized In This Process」というエラーでアプリが落ちる場合の対処法

Firebaseを使ったアプリを動かした時に、

Default FirebaseApp is not initialized in this process net.minpro.textrecognitionnocamera. Make sure to call FirebaseApp.initializeApp(Context) first.

というエラーが出て、アプリが落ちてしまう場合があります。

blank

 

この時に、

Make sure to call FirebaseApp.initializeApp(Context) first.

とあるので、MainActivityあるいはMyApplicationクラスでFirebaseApp#initializeAppメソッドを呼び出せば解決するのかと思いきや、そうはイカの塩辛という話です。

(参考にさせて頂いたサイト)

 

Firebaseをプロジェクトに追加するときの初期設定がマズいから起こったエラーだった

結論から言うと、このエラーはFirebaseApp#initializeAppメソッドが必要だからではなく、そもそもFirebaseをプロジェクトに追加するときの初期設定がマズかったことによって起こるエラーなのだそうです。

Firebaseのプロジェクトへの追加は、Android Studioからアシスタント機能を使ってやることもできます(Tools ⇒ Firebase)。

この場合は、このエラーが起こる可能性は低いと考えられます。

blank

 

一方、手動で追加するやり方もあって、今回のエラーはこの手順に沿っていないことによって発生するようです。

ですので、この手順に沿って行われているかを確認することが、解決法になります。

 

Firebase SDKの手動での追加が正しく行われているか確認する

手順は、先のリンクの通りなのですが、

 

1.プロジェクトレベルの build.gradle ファイルの設定

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.1.0' // google-services プラグインの追加
    }
}

allprojects {
    // ...
    repositories {
        // ...
        google() // Google's Mavenレポジトリの追加
    }
}

 

2.アプリ(モジュールレベル)のbuild.gradle ファイルの設定

apply plugin: 'com.android.application'

android {
  // ...
}

dependencies {
  // ...
  implementation 'com.google.firebase:firebase-core:16.0.4' //Firebaseコアのライブラリ追加

  // Getting a "Could not find" error? Make sure you have
  // added the Google maven respository to your root build.gradle
}

// google servicesのプラグインの追加(ファイルの末尾にすること!!)
apply plugin: 'com.google.gms.google-services'

 

3.使いたいFIrebaseの機能の依存関係追加

さまざまな Firebase 機能で使用できるライブラリは次のとおりです。

Gradle の依存関係行 サービス
com.google.firebase:firebase-core:16.0.4 アナリティクス
com.google.firebase:firebase-database:16.0.3 Realtime Database
com.google.firebase:firebase-firestore:17.1.1 Cloud Firestore
com.google.firebase:firebase-storage:16.0.3 Storage
com.crashlytics.sdk.android:crashlytics:2.9.5 Crashlytics
com.google.firebase:firebase-auth:16.0.4 Authentication
com.google.firebase:firebase-messaging:17.3.3 Cloud Messaging
com.google.firebase:firebase-config:16.0.1 Remote Config
com.google.firebase:firebase-invites:16.0.4 Invites と Dynamic Links
com.google.firebase:firebase-ads:16.0.1 AdMob
com.google.firebase:firebase-appindexing:16.0.2 App Indexing
com.google.firebase:firebase-perf:16.1.2 Performance Monitoring
com.google.firebase:firebase-functions:16.1.1 Cloud Functions for Firebase Client SDK
com.google.firebase:firebase-ml-vision:17.0.1 ML Kit(Vision)
com.google.firebase:firebase-ml-model-interpreter:16.2.2 ML Kit(カスタムモデル)

(詳しくは下の動画で解説していますのでよろしければご覧ください)

 

blank

こんな記事も読まれています

今すぐプレゼントを受け取る(約6時間のFlutter初級編体験版動画講座を無料でプレゼント)
blank

はじめての方へ

blank
みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

おすすめコンテンツ

プログラミングを学ぶとどんないいことがあるのか
みんプロ式を選んでいただける6つの理由
ぼくの人生挫折ヒストリー(代表者プロフィール)
ぼくのプログラミング挫折ヒストリー(無料メール講座・6大特典付き)
今最も注目のアプリ開発ツール「Flutter(フラッター)」ミニ動画講座

みんプロ式動画講座(コア・Flutter)

ゼロからのFlutter(初級編)-はじめてのプログラミングからアプリリリースまで-
Flutter中級編1-Web通信・設計・状態管理・DIの基礎-
Flutter中級編2-Firebase/地図・カメラ連携等の基礎-
Flutter中級編3-広告/アプリ内課金等の基礎-
Flutter中級編4-Webアプリとレスポンシブデザインの基礎-

みんプロ式動画講座(サテライト)

Flutter/Dartトラブルシューティング・小ネタ集(コア初級編受講で無料プレゼント)
ゼロからのGit・GitHub(コマンドラインツールを極力使わないバージョン管理入門)
Flutter/Dartにおける設計・状態管理・DIの解説集
Dart逆引き大辞典
Flutterにおけるテストの基礎
blank
blank

みんプロ作成アプリ

blank
blank
blank
blank

TOP