地図を表示する:Yahoo map Android 地図 API

yahoo-map-android-api-show.png

単純に地図を表示してみよう

showmap.png

MapActivity派生クラスのOnCreateにて

import jp.co.yahoo.android.maps.*;
.....
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        MapView mapView = new MapView(this,"あなたのAPIキー");
          MapController c = mapView.getMapController();//地図の各種設定を行うため、MapControllerインスタンスを作成
          c.setCenter(new GeoPoint(35665721, 139731006)); //初期表示の地図を指定
          c.setZoom(1);                   //初期表示の縮尺を指定
          setContentView(mapView);//MapViewを親Viewに追加します。
 
    }

AndroidManifest.xml

以下のパーミッションを追加する

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />

それぞれの意味
INTERNET Androidアプリでインターネット接続する許可
ACCESS_NETWORK_STATE 3G/Wifiを意識せずに、ネットワーク通信が可能な状態であるかを知る権利
ACCESS_FINE_LOCATION GPSにアクセスする(GPSを使わないなら書かなくてもいい)
ACCESS_MOCK_LOCATION 擬似的な位置を使う権利。デバッグに必要でリリース版には不要

結果

たったこれだけで、ズームイン&ズームアウト、平行移動も可能です。

遭遇したエラー

地図が出てこない。

failed.png

チェック項目

  • APIキーはちゃんと入れたか?
  • AndroidManifest.xmlにパーミッションを入れたかどうか

サポートサイト Wikidot.com