Google Maps Android API v2 のサンプルアプリケーションを起動してみる

読み込んだサンプルアプリケーションに次は先ほど取得した API key を組み込む。


AndroidManifest.xml ファイルを開くとこんな感じになってる。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.example.mapdemo"
  android:versionCode="1"
  android:versionName="1.0">
  <permission
    android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
    android:protectionLevel="signature"/>
  <uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>
  <!-- Copied from Google Maps Library/AndroidManifest.xml. -->
  <uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16"/>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
  <!-- External storage for caching. -->
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  <!-- My Location -->
  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
  <!-- Maps API needs OpenGL ES 2.0. -->
  <uses-feature
    android:glEsVersion="0x00020000"
    android:required="true"/>
  <!-- End of copy. -->
  <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/demo_title"
    android:hardwareAccelerated="true">
<!-- You must insert your own Google Maps for Android API v2 key in here. -->
    <meta-data
      android:name="com.google.android.maps.v2.API_KEY"
      android:value=""/>

親切に「You must insert your own Google Maps for Android API v2 key in here.」と書いてあるので、ここの meta-data に API key を入れる。
こんな感じになる。

    <meta-data
      android:name="com.google.android.maps.v2.API_KEY"
      android:value="AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0"/>

上記 API key(AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0)はサンプルのページに載っていたものなので、ここは各人のアプリケーション用に準備したものに変更する。


以上で準備は完了!


エミュレータで起動してみると…


ちゃんと起動した!
で、[Basic Map] をクリッくしてみると…

なにやらアラートが…
「This app won't run without Google Play services, which are missing from your phone.(via Bazaar)」だそうだ。
Google Play services がこの電話にはないから動かないってことらしい。
で、調べてみると

こんなん発見。
どうやら、今のところエミュレータじゃ Google Play services が必要なアプリは動かないみたいだ…。
残念。


今、手元にある実機は i'm Watch だけで、これは Android OS 1.6 なので、2.2 以上が必要な Google Maps Android API v2 は動かないし…。
というわけで、当分は Google Maps Android API v2 で遊べないということがわかったのでした、残念。


Kindle Fire HD が来るのは 12月の終わりだっけ?
ん? Google Play 対応しない Kindle Fire HD で、Google Play servicesって動くのか?


[2013/02/21 Update]
というわけで、エミュレータじゃダメだったけど、実機ではこの手順のままでちゃんと動いてます!