如何於模擬器上執行Google Maps Android API v2

19 downloads 568 Views 367KB Size Report
作者:林致宇. 標題:模擬器上執行Google Maps API Demos. 這份文件將分成兩個部 份來說明:(一)模擬器設定與相關軟體安裝;(二)範例. 程式安裝。本文件主要是 ...
作者:林致宇   標題:模擬器上執行 Google  Maps  API  Demos     這份文件將分成兩個部份來說明: (一)模擬器設定與相關軟體安裝; (二)範例 程式安裝。本文件主要是參考 Running  Google  Maps  API  v2  Sample  in  Emulator   [1]這篇文章   。     (一)模擬器設定與相關軟體安裝     首先先建立一個模擬器,要注意的是 Target 是選擇 Android  4.0.3  –  API  Level  15, 而不是 Google  APIs  (Google  Inc.)  –  API  Level  15,其它設定如下圖所示:    

   

接著按照[1]所附的連結下載 GoogleLoginService.apk,   GoogleServicesFramework.apk,  Phonesky,apk,   以及 com.google.android.apps.maps-­‐1.apk,不需下載 com.google.android.gms-­‐2.apk, 經測試的結果,那一個版本的 Google  Play  services 無法在我的模擬器上運作, 我是另外在[2]這個網站下載了 Google_Play_services_3.0.27.apk。     必要的檔案下載後,我先將所有 apk 複製一份到 /platform-­‐tools,接著開啟終端機,切換到 /platform-­‐tools 後執行下面兩個指令:   (1)  ./adb  shell  mount  -­‐o  remount,rw  -­‐t  yaffs2  /dev/block/mtdblock0  /system   (2)  ./adb  shell  chmod  777  /system/app     接著再執行下面三個指令:   (3)  ./adb  push  GoogleLoginService.apk  /system/app/   (4)  ./adb  push  GoogleServicesFramework.apk  /system/app/   (5)  ./adb  push  Phonesky.apk  /system/app/     如下圖所示:  

    接著執行下面兩個指令:   (6)  ./adb  install  com.google.android.apps.maps-­‐1.apk   (7)  ./adb  install  Google_Play_services_3.0.27.apk           以上便完成了模擬器設定與相關軟體安裝。     (二)範例程式安裝    

首先開啟 Android  SDK  Manager,確認 Google  Play  services 已安裝好,如下圖所 示:  

    接著載入地圖 Library,其是以 Project 的形式存在,載入方式如下:於 Eclipse 執行「File  è  Import  è  Existing  Android  Code  Into  Workspace」,選擇 /extras/google/google_play_services/libproject。完成後繼 續載入範例程式,選擇 /extras/google/google_play_services/samples/maps 這個 Project。     為了讓這個範例程式正常運作,我們需取得 API  Key,取得方式可參考第九章[3] 的說明。然而此處我們所使用的 Keystore 不是我們自己所產生的 Keystore,必 須使用/.android/debug.keystore 這個檔案(其密碼為小寫的 android),取得 SHA1 後再結合 package  name 就可取得 API  Key,如下圖所示:  

    修改範例程式的 AndroidManifest.xml,將 API  Key 填入到標籤的 android:value 屬性,如下圖所示:  

    最後執行該範例程式,應該可見程式正常地運作於模擬器上。     [1]  Running  Google  Maps  API  v2  Sample  in  Emulator,   http://saleh360.blogspot.tw/2012/12/android-­‐running-­‐google-­‐maps-­‐api-­‐v2_12. html   [2]  Google  Play  services  3.0.27,   http://www.coolapk.com/apk/6242/comment/148111/     [3]  Location  and  Maps,   http://hscc.cs.nctu.edu.tw/~lincyu/Android/Chapter9.pdf