FlutterでFirestoreのfirebase_authプラグイン使用時に遭遇したエラーの解決方法

はじめに
FlutterでAndroid用のアプリを作成しており、FirebaseのGoogle認証を実装するためにfirebase_authというプラグインを使用したところ、「CloudFirestorePlugin.javaは非推奨のAPIを使用またはオーバーライドしています。」というエラーが出ました。この記事ではこの解決策をまとめます。
前提と環境
OSはUbuntu18.04でその他のバージョン情報は以下のflutter doctor
の実行結果の通りです。
エラーの状況と内容
まず状況としてはFlutterのプロジェクトを新規作成した状態で以下のパッケージを追加していました。
そしてアプリを起動してみると、長いですがコンソールに以下のようなエラーが表示されました。
上記エラーの解決策を次節に載せます。
解決策
まず、以下のように下2行をandroid/gradle.properties
に追記します。android
ディレクトリは自身のFlutterアプリのディレクトリ直下にあります。
さらに以下のようにandroid/app/build.gradle
のdefaultConfig
を一部修正します。
なお、私の環境ではminSdkVersion
は元々16、targetSdkVersion
は28でした。
最後に、自身のFlutterアプリのディレクトリパスで以下を実行して完了です。
エラーの原因と参考文献について
このエラーの原因については、flutter create
によって新規作成したFlutterプロジェクト内のbuild.gradle
にて指定されているSDKのバージョンと、プラグインのbuild.gradle
にて指定されているSDKのバージョンが一致していないことが原因の1つのようです。ただどうにも私の理解が十分でないため、必要な方は以下のGitHubでのIssuesで議論されていますので見てみてください。
firebase_auth: ^0.8.0+1 crashes on Android #27156
Plugins are broken since move to AndroidX #27106
まとめ
はっきりとエラーの原因がわかっていない状態ではありますが、同様のエラーに遭遇している方向けにまとめておきます。
関連記事
- 公開日:2022/08/30 更新日:2022/08/30
FlutterアプリでAndroid StudioのGenerate Signed Bundle/APKが表示されない時の対処法
FlutterアプリをGoogle Play Storeに公開するためにAndroid Studioを使ってアップロード鍵を生成しようとしたところ、公式ドキュメントに書かれている「Build」→「Generate Signed Bundle/APK」というメニューが見つかりませんでした。この解決法をメモします。
- 公開日:2022/08/15 更新日:2022/08/15
webview_flutterを使ってFlutterアプリ内でWebページを開く
FlutterでURLをタップした時にアプリ内でそのURLのWebページを開く方法についてまとめます。この記事では、Flutter公式のプラグインであるwebview_flutterを使用した実装例をメモします。
- 公開日:2022/08/14 更新日:2022/08/14
FlutterでURLへのリンクを作成してアプリ外でWebページを開く
FlutterでURLをタップしたらブラウザが開いてそこでURL先を表示したい場合があります。この記事では、Flutter公式のプラグインを使用した実装例をメモします。
- 公開日:2019/12/03 更新日:2019/12/03
Android App Bundleを実機にインストールして試すために使うbundletoolの使い方
Flutterなどで開発したAndroidアプリを自分の手元にある実機にインストールして試したい場合はbundletoolを使用するよう公式ドキュメントに記載されています。ただ、常識であるためなのか詳しい使い方が書かれておらず戸惑ったのでメモしておきます。
- 公開日:2019/12/02 更新日:2019/12/02
Flutterでアプリの復帰やサスペンドを検出して処理を実行する
Flutterで開発したアプリが復帰した時やサスペンドした時を検出して任意の処理を実行するための手順をまとめます。
開発アプリ
