こんにちは。 pregum_foxです。
今回は、FlutterでGoogle Mapsプラグインを試してみたときに躓いた所をメモしておきます。
目次です。
概要
簡単に概要を記載しますと、
- FlutterでGoogle Mapを表示させるために、Google MapsプラグインのサンプルをAVDで動かした。
- 起動はしたが、Google Mapは表示されず、
<アプリケーション名> won't run unless you update Google Play services.
と表示された。 - SDK Managerで
Google APIs Intel x86 Atom System Image
を導入後、作成したAVDを使用した。 - Google Play servicesのアップデートが始まり、その後サンプルを起動すると、無事Google Mapが表示された。
動作環境
項目 | バージョン |
---|---|
Flutter | 1.7.8+hotfix.4 |
Dart | 2.4.0 |
開発用OS | Windows 10 |
AVDのVersion | 7.1.1(Nougat) |
PS C:\Users\XXX\XXX\XXX\Flutter\api_practice> flutter --version Flutter 1.7.8+hotfix.4 • channel stable • https://github.com/flutter/flutter.git Framework • revision 20e59316b8 (7 weeks ago) • 2019-07-18 20:04:33 -0700 Engine • revision fee001c93f Tools • Dart 2.4.0
躓いたところ
こちらの記事を参考にGoogle Mapsプラグインのサンプルを触っていた所
以下のような画面が表示され、Google Mapが表示されませんでした。
原因
作成したAVDのGoogle Play servicesのVersionが古いのが原因でした。
参考サイト : Android - ogle Map API Demo won't run unless you update Google Play servicesエラー|teratail
対処方法
以下の操作を行うと表示されるようになりました。
- Android StudioのSDK ManagerでSDK Platformタブで対象OSのバージョンの
Google APIs Intel x86 Atom_64 System Image
の項目を追加する。 - AVDを作成する。
- 起動後Google Playを起動しアップデートされるまで待つ。
- アップデート後、Google Play servicesのバージョンを確認し、バージョンが上がっていることを確認する。
- Google Mapsプラグインのサンプルを起動し、Google Mapが表示されていることを確認。 ※サンプル初回起動時に以下のようなポップアップが表示される場合がありますが、私はACCEPTをタップしました。
検証方法
初めにAndroid Studio上でSDK Managerを開いて、SDK Platformタブで問題発生時の設定環境を確認しました。
AVDのVersionは7.1.1で試しました。
その時の設定画面は以下の通りです。その状態で一度AVDを作成と起動を行い、その状態ではGoogle Mapが表示されない事を確認しました。
- この時のGoogle Play servicesのVersionは10.2.98でした。
- 再度SDK Managerを開いて、SDK Platformタブの設定で
Google APIs Intel x86 Atom_64 System Image
の項目を追加しました。
その時の設定画面は以下の通りです。
- AVDを作成、起動しPlay Storeを起動しアップデートが開始される事を確認し、アップデート後Google Play servicesのVersionがアップデートされている事を確認しました。
- このままGoogle Mapsプラグインのサンプルを起動し、Google Mapが表示される事を確認しました。
雑感
Google Mapのサンプルを触ろうと思っただけですが、build.gradleや端末側の問題があったりして一度Androidを体系的に学んだ方が、こうしたFlutter周りの問題は素早く解決できるかなと思いました。
読んで頂きありがとうございました。