次の方法で共有


Maps アプリケーションの起動

Xamarin.Android でマップを操作する最も簡単な方法は、次に示す組み込みの Maps アプリケーションを利用することです。

Example screenshot of built-in Google Maps app

Maps アプリケーションを使用すると、マップはアプリケーションの一部になりません。 代わりに、アプリケーションで Maps アプリケーションを起動し、外部でマップを読み込みます。 次のセクションでは、Xamarin.Android を使用して、上記のようなマップを起動する方法を説明します。

意図の作成

Maps アプリケーションの使用は、適切な URI で意図を作成し、アクションを ActionView に設定して、StartActivity メソッドを呼び出すだけの、簡単なものです。 たとえば、次のコードでは、指定した緯度と経度を中心として Maps アプリケーションが起動されます。

var geoUri = Android.Net.Uri.Parse ("geo:42.374260,-71.120824");
var mapIntent = new Intent (Intent.ActionView, geoUri);
StartActivity (mapIntent);

前のスクリーンショットで示されているマップを起動するために必要なコードはこれだけです。 緯度と経度を指定するだけでなく、Maps の URI スキームでは、他にもいくつかのオプションがサポートされています。

geo URI スキーム

上記のコードでは、geo スキームを使用して URI を作成しています。 この URI スキームでは、次のようないくつかの形式がサポートされています。

  • geo:latitude,longitude - 緯度と経度を中央にして Maps アプリケーションを開きます。

  • geo:latitude,longitude?z=zoom - 緯度と経度を中央にして、指定したズーム レベルで、Maps アプリケーションを開きます。 ズーム レベルは、1 から 23 の範囲で指定できます。1 は地球全体を表示し、23 は最も拡大されたズーム レベルです。

  • geo:0,0?q=my+street+address - 番地の場所で Maps アプリケーションを開きます。

  • geo:0,0?q=business+near+city - Maps アプリケーションを開き、注釈付きの検索結果を表示します。

クエリ (つまり、番地または検索語) を受け取る URI のバージョンでは、Google のジオコーダー サービスを使用して、マップに表示される場所を取得します。 たとえば、URI geo:0,0?q=coop+Cambridge では、次のようなマップが表示されます。

Example screenshot showing Google Maps with a search term

geo URI スキームの詳細については、「地図上の場所を表示する」を参照してください。

ストリート ビュー

geo スキームに加えて、Android では意図からのストリート ビューの読み込みもサポートされています。 Xamarin.Android から起動されたストリート ビュー アプリケーションの例を次に示します。

Example screenshot of a street view

ストリート ビューを起動するには、次のコードに示すように、単に google.streetview URI スキームを使用します。

var streetViewUri = Android.Net.Uri.Parse (
       "google.streetview:cbll=42.374260,-71.120824&cbp=1,90,,0,1.0&mz=20");  
var streetViewIntent = new Intent (Intent.ActionView, streetViewUri);  
StartActivity (streetViewIntent);

上で使用した google.streetview URI スキームでは、次の形式が使用されます。

google.streetview:cbll=lat,lng&cbp=1,yaw,,pitch,zoom&mz=mapZoom

ご覧のように、次に示すいくつかのパラメーターがサポートされています。

  • lat - ストリート ビューで表示する場所の緯度。

  • lng - ストリート ビューで表示する場所の経度。

  • pitch - ストリート ビュー パノラマの角度。中心からの角度で測定され、90 度は真下、-90 度は真上になります。

  • yaw - ストリート ビュー パノラマのビューの中心。北から時計回りに角度で測定されます。

  • zoom - ストリート ビュー パノラマのズーム乗数 (1.0 = 通常のズーム、2.0 = 2 倍ズーム、3.0 = 4 倍ズームなど)。

  • mz - ストリート ビューから Maps アプリケーションに移動するときに使用されるマップのズーム レベル。

組み込みの Maps アプリケーションまたはストリート ビューを使用すると、マッピングのサポートを簡単に追加することができます。 ただし、Android の Maps API では、マッピング エクスペリエンスをさらに細かく制御できます。