Androidアプリに Google Maps を組み込むには: Google Maps Android APIの導入について


自作のAndroidアプリにGoogle Mapを入れてみたいケースは多いと思います。その場合はGoogle Maps Android APIを使います。

結論から先に言うと、Googel Maps APIを使うためにはアプリを認証してAPIキーを取得する必要があります。

この記事では、サンプルアプリを使って、取得したAPIキーを使って、アプリ内でAPIを実行するところについてを説明します。全体の手順は以下の通り。

  1. Androidアプリをダウンロード
  2. Google Developersのページへ行く。
  3. Google Developers Console で作業し、アプリを認証してAPIキーを取得。
  4. Android Studioでxmlファイルを修正し、実行

では、始めます。

1、Androidアプリをダウンロード

Google Maps Android APIを使っているサンプルアプリなら何でも良いのだが、ここでは下記のサンプルを使用する。RecyclerViewを使って、各CardViewに地図を表示している。
https://github.com/saxman/android-map_list.git

サンプルアプリのダウンロード

ターミナルで下記コマンドを入力

git clone https://github.com/saxman/android-map_list.git

サンプルアプリの起動

Android Studioを起動して、上記プロジェクトを開いて実行してみる。しかし、このまま実行しても、アプリは起動するが地図が表示されないはず。なぜなら自分のAPIキーを取得する必要があるため。

以下、APIキーの取得方法について説明するが、その前にパッケージ名を確認しておく(後で必要になるため)。上記サンプルアプリの場合、com.example.google.maplistになっているはず。

2、Google Developersのページへ行く。

https://developers.google.com/maps/documentation/android-api/
キーを取得ボタンを押して、「続ける」をクリック。

3、Google Developers Console で次の作業を行う

新しいプロジェクトを作成

Google Maps Android API を有効するアプリケーションを登録するため、新しいプロジェクトを作成する。そのまま「作成」ボタンをクリック。

認証情報:Android APIキーの生成

名前は何でも良い。後から分かりやすいようにアプリ名などの名前を入れれば良い。

フィンガープリント取得

ターミナルで下記のコマンドを実行し、フィンガープリントを取得する。

keytool -keystore ~/.android/debug.keystore -list -v

なお、「パスワードを入力してください:」と出るが、そのままEnterすれば良い。
SHA1のフィンガープリントをコピーしておく※フィンガープリントの内容は伏せている

フィンガープリントの入力

+パッケージ名とフィンガープリントを追加 のボタンをクリックすると入力欄が開くので、
SHA-1 証明書のフィンガープリント欄にペーストする

パッケージ名の入力

Androidアプリのパッケージ名を入力欄に入力
ここでは、先ほどGit cloneしたサンプルアプリの com.example.google.maplist となる。
※フィンガープリントの内容は伏せている

APIキーの生成

作成ボタンを押すと、APIキーが生成されるので、コピーしておく。※キーの内容は伏せている

4、Android Studioでxmlファイルを修正し、実行

APIキーの入力

res > values 内の strings.xml (1) を開き、”google_maps_key” (2) の部分にAPIキーをペースト

実行する

Google Mapが表示される。Have fun!

以上