リア充爆発日記

You don't even know what ria-ju really is.

AndroidでGoogle Maps v2 をエミュレータで動かしてしかも爆速

Google Play ServicesとGoogle Maps Android API v2について調べて見たメモでちょろっと触れたけど、Google Maps v2はGoogle Play services経由で動かすという特性上、エミュレータでは基本的に現状は使えない。が、基本があれば例外もある、ということで動かす方法がHow to make Android Google Maps v2 work in android emulatorで紹介されていたのでやってみた。

原文のやり方

  1. エミュレータを作る
    • “5.1” WVGA (480 x 800: mdpi)”を選択。
    • targetは“Android 4.1.2 – API level 16″を選択。
    • “CPU/ABI” は “ARM”を選択
  2. 他はそのままにして起動する
  3. com.android.vending-1.apk と com.google.android.gms-1.apkをインストールする
    • それぞれのAPKは原文サイトからゲットするかググって探す。
    • インストールコマンドは"adb -s {DEVICE NAME} install {APK}"
    • Device名は"adb devices"で調べる

以上。

ちなみにこの設定だとカメラのエミュレーションがオフだったのとメモリ割当やSDカード容量も少なすぎたので、カメラエミュレーションをオンにして、メモリ等の割当も増やしたけど大丈夫っぽい。

ということはCPUもintelにして爆速いけるんじゃね?と思った試してみたら・・・
うまくいった!!
爆速AndroidエミュレータがついにMacOSX10.8.2でも使えるようになった!!

やっべー!超快適!

ただ1点だけ。旧Mapと併用はできない。基本的にGoogle APIないから。なのでManifestに

が入ってると動かないので注意。イメージをGoogleAPI対応のにしてうまくいけば問題ないけど、そうしたら爆速が難しいんじゃないかな。。
まあ、でもMaps v1とv2併用しなきゃいけないことはあまりない気もするので、実際はあまり問題にならないケースだと思うけど。

追記)GMSを使っている場合は、そこでNoClassDefFoundError的なものがでるかもしれない。その場合はcom.google.android.gsf.apkを探してきてadb installすれば乗り越えられるかもしれない。

作ればわかる! Androidプログラミング 第2版 -SDK4対応- (Smart Mobile Developer)

作ればわかる! Androidプログラミング 第2版 -SDK4対応- (Smart Mobile Developer)