SyntaxHighliter

2013年1月5日土曜日

Google Maps Android API v2 になってた

久しぶりに自作のアプリの更新をしようと思ったらAPIがバージョンアップしていた。
なにかいろいろ変わっていそうなのでデモアプリを動かして確認する。

まず、デモアプリの構築。

eclipse4.2(JUNO)のプロジェクト・エクスプローラーの右クリック「インポート」-「Android/Existing Android Code Into Workspace」で asndoid-sdk\extras\google\google_play_services\samples\maps を選んでワークスペースにコピー+インポート。

MapActivityというプロジェクト名になったのでリファクタリングからプロジェクトの名前を変更。
Fragment関連のエラーがあったので、プロジェクトを右クリックして、「Android ツール」-「サポートライブラリの追加」で2.x系でもFragmentが使えるようにしておく。

ドキュメントを見ると、「"Google Play services"をインストールしておけよ、普通は入ってないぞ」と書いてあるので、Android SDK Managerで確認するとインストールされていないのでインストールする。

追加されたライブラリのプロジェクトも同じくインポートする。
android-sdk\extras\google\google_play_services\libproject\google-play-services_lib

デモアプリはこのライブラリを参照しているので、プロジェクトのプロパティの「Android」-「ライブラリ」の参照を置き換える。(workspaceフォルダのルートからの位置によってはそのままでもOK)

ようやく、コンパイルエラーはなくなるはず。

とりあえず実行してみるとLogCatに[Autorization failure.]ってでてる。

『そういえば、APIキーが必要だったな』と思いドキュメントを読み進める。

とりあえず、「Google APIs Console」ってとこへ行ってみる。


うーん変わったな。「Create project...」を押してみる。

 今までバラバラだったAPIの登録が一括で管理できるみたいだ。
「Google Maps Android API v2」をONにする。

 いつもの利用規約。

 keystoreの値を入力しないといけないのでkeytoolで表示する。以前作っていたので今回は表示だけ。新規に作る場合は検索すれば出てくるでしょう。


 こんな感じで表示されたので、SHA-1の値を貼り付ける。セミコロンの後にパッケージ名を追加。

 こんな感じで出来上がるので、今度はAPIキーの値をコピーしてAndroidManifest.xmlに貼り付ける。

実機にデモアプリをインストール&実行。

ローテートとかもできるみたいですね。