Googleマップの iOS版とともに公開された iOS用のMaps SDK ですが、Xamarin.iOS でも使うことができます。(ちなみに Android用の Google Maps API v2 を Xamarin.Android で使う方法は以前書きました。)
Xamarin Component Store にて Free で(ラッパー)ライブラリが公開されているので、それを使います。
コンポーネントをダウンロードすると、中にサンプルプロジェクトが含まれているのでそれを動かしてみます。
メニュー -> ファイル -> 新規 -> ソリューション -> C# -> iOS -> iPhone -> Single View Application を選択。ソリューションはなんでもいいです。どうせ後で捨てるので。テキトーに HogeApp
とでもしましょうか。
メニュー -> プロジェクト -> Get More Components を選択します。
Google Maps を探しだして [Add to App] します。
しばらくすると、左側のビューの Components の中に "Google Maps" が作成されるので、それをダブルクリックして開きます。
右に表示されるコンテンツのタブから「Samples」を選択します。
さらに "iOS Sample" の「Open Sample」を押します。 すると、左側のビューに「GoogleMapsSample」プロジェクトが追加されます。
この時点で HogeApp は意味がなくなってしまいましたが、ディスクから削除すると GoogleMapsSample も一緒に消えてしまうので、無視しておきます。GoogleMapsSample がどこにあるかは、上図のように「親フォルダを開く」すると Finder で確認できます。
以降はこの GoogleMapsSample プロジェクトを使います。
ここからは、Component -> GoogleMaps をダブルクリックすると表示される「Getting Started」の「The Google Maps API Key」に沿っていきます。
ブラウザで Google API Console へ移動して、左上のドロップダウンから「Create…」にてプロジェクトを作成します。既に存在しているなら、それを使ってもいいです。
左側のメニュー「Services」の中にある「Google Maps SDK for iOS」を ON にします。利用規約にも同意しましょう。
左側のメニュー「API Access」を開き、ページの一番下に表示される「Create new iOS key」ボタンを押します。
入力欄に「com.example.myapp」とタイプします。本来はちゃんとした「あなたのアプリの固有ID」を入れるのでしょうが、当方 iOS 開発は詳しくないのでここでは例のままにします。
「Create」を押します。
すると、Key for iOS apps に 作成されたAPIキーが表示されるはずです。
この API key をコピーしておいて、Xamarin Studio に戻ります。
Google API Console で設定した Identifier と一致させる必要があるので「com.example.myapp」を設定します。(普通は先にアプリの Identifier を決めてから API key を取得するのでしょうが)
コピーしておいた API key を、下図の位置に貼り付けます。
以上で準備完了です。 実行してみましょう。Android版の Google Maps API v2 は、エミュレータでは実行できませんが、iOS版は、シミュレータでも実行できます。
ばばーん!
あれ?ズームコントロールとか表示されないのね。
とりあえず動く所までできたので、今日はこの辺で。
CLLocationCoordinate2D
とか長ェよ、ただの LatLng
だろ