Google Maps Android API v2 を使ったマップ表示

  • 27
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Android Studio ベースの内容に改訂。
* Android Studio 1.0.2
* Android SDK 5.0.1 (API21)
* Play Services 6.5.87

参考サイト

https://developers.google.com/maps/documentation/android/start

手順

Play Services をプロジェクトに追加

  • メニュー File > Project Structure... を開く。
  • Dependencies タブ下の + をクリックし、Library dependency... を選択。
  • play-services を選択して OK

レイアウトの編集

  • activity_main.xml を開く。
  • Palette にある <fragment> をクリック後、MapFragment を選択。
  • Properties の Idmap に変更。
  • layout:widthlayout:heightmatch_parent に変更。

コードの編集

MainActivity.onCreate() を次のようにする。

MainActivity.java
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);

        LatLng latlng = new LatLng(35.710065, 139.8107);

        MapFragment fragment = (MapFragment)getFragmentManager().findFragmentById(R.id.map);
        GoogleMap map = fragment.getMap();
        if (map != null) {
            map.addMarker(new MarkerOptions().position(latlng).title("Skytree"));
            map.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, 15));
        }
    }

API キーの取得

  • Google アカウントを取得し、Google APIs のコンソールに入る。
  • API プロジェクトを作成。
  • Services で "Google Maps Android API v2" を ON にする。
  • API Access で "Create new Android key..." を実行。
    • 表示されている API key を覚えておく。
    • デバッグ用途だけなら fingerprint の登録不要(Any apps allowed で OK)。

AndroidManifest.xml の編集

manifest タグの下に以下を追記。

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-feature
        android:glEsVersion="0x00020000"
        android:required="true"/>
>

また application タグの下に以下を追記。
"YOUR-API-KEY" のところは取得した API key に置き換える。

        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
        <meta-data
            android:name="com.google.android.maps.v2.API_KEY"
            android:value="YOUR-API-KEY"/>

動作確認

Nexus 5 実機および Emulator で動作することを確認した。