Top Banner
Google Map #1 根據Google Maps Android API V2更新 曾吉弘 [email protected] 1
34

Google Map Android API V2 setup guide

May 15, 2015

Download

Software

Google Map Android API V2 setup guide, 按圖施工保證成功
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Google Map Android API V2 setup guide

Google Map #1

根據Google Maps Android API V2更新

曾吉弘

[email protected]

1

Page 2: Google Map Android API V2 setup guide

大綱

• Google Maps Android API V2

• 申請Google Map API Key

• 載入Google Map - GMap

2

Page 3: Google Map Android API V2 setup guide

環境建置

Google Maps Android API V2

3

Page 4: Google Map Android API V2 setup guide

步驟

1. 安裝 Google Play services SDK

2. 取得SHA1 憑證

3. Google APIs Console取得API key

4. 設定權限

5. 加入地圖

4

Page 5: Google Map Android API V2 setup guide

V1 / V2比一比

• V1 的專案版本一定要為GoogleAPI,V2則免。

• V1 的地圖元件為MapView,現已停用。V2之後改為 Fragment

5

Page 6: Google Map Android API V2 setup guide

新增專案Maps

package name需與金鑰相同

根據Google 官方文件操作https://developers.google.com/maps/documentation/android/start

?hl=zh-TW

6

Page 7: Google Map Android API V2 setup guide

安裝Google Play services SDK

• 請由 SDK Manager 中安裝[Google Play services]

7

Page 8: Google Map Android API V2 setup guide

匯入到Eclipse中• FileImport

• Existing Android Code Into Workspace

– <SDK>extras/google/google_play_services/libproject/google-play-services_lib 專案。

8

Page 9: Google Map Android API V2 setup guide

勾選Is Library

• 請勾選Is Library,否則無法從外部專案匯入。

Page 10: Google Map Android API V2 setup guide

會在畫面左側看到這個lib

Page 11: Google Map Android API V2 setup guide

新增專案GMap

Page 12: Google Map Android API V2 setup guide

在專案中匯入libs

• 對專案目錄點右鍵PropertiesAndroid

• Add libraries,請記得不要勾選 Is Library。Lib本身才要勾選。

• 完成如右圖

12

Page 13: Google Map Android API V2 setup guide

產生SHA1

• 在cmd下切換到 cd C:\Program Files\Java\jdk1.7.0_10\bin

• 輸入:

– keytool -list -v -keystore C:\Users\user\.android\debug.keystore

• 以上紅字會因為不同電腦或軟體版本有所不同

• 金鑰密碼請直接按ENTER

13

Page 14: Google Map Android API V2 setup guide

找到SHA1 那一行,其他不是

14

Page 15: Google Map Android API V2 setup guide

自己產生debug.keystore

• C:\Program Files\Java\<JDK>\bin>輸入:

• keytool -genkey -v -keystore <完整路徑>debug.keystore -storepass android -alias androiddebugkey -keypass android -dname"CN=Android Debug,O=Android,C=US

– http://stackoverflow.com/questions/8576732/there-is-no-debug-keystore-in-android-folder

• Win7 C:/Users/<帳號>/.android/

• XP Document and Settings (路徑包含空格會造成錯誤,可將檔案產生在其它位置)

15

Page 16: Google Map Android API V2 setup guide

Google API console

• https://code.google.com/apis/console/#project:48090014903

16

Page 17: Google Map Android API V2 setup guide

啟動 Google Maps Android API V2服務

17

Page 18: Google Map Android API V2 setup guide

API Access取得API Key

18

Page 19: Google Map Android API V2 setup guide

格式:SHA1;package name

package name改成自己的專案名稱

19

Page 20: Google Map Android API V2 setup guide

修改AndroidManifest.xml -1

• 在<application>元素中加入子標籤

• your_api_key請填入剛剛申請好API KEY– <meta-data

android:name="com.google.android.maps.v2.API_KEY"

android:value="your_api_key"/>

– <meta-data

android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>

20

Page 21: Google Map Android API V2 setup guide

修改AndroidManifest.xml -2• 加入權限

– <permissionandroid:name="com.example.mapdemo.permission.MAPS_RECEIVE" android:protectionLevel="signature"/>

– <uses-permissionandroid:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>

• 其中com.example.mapdemo換成自己的。

21

Page 22: Google Map Android API V2 setup guide

加入其他權限

1. <uses-permission android:name="android.permission.INTERNET"/>2. <uses-permission

android:name="android.permission.ACCESS_NETWORK_STATE"/>3. <uses-permission

android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>4. <uses-permission

android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>

5. <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

6. <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

• 5, 6項只有要用到定位功能時才要加入,但通常都會用到所以就加吧

22

Page 23: Google Map Android API V2 setup guide

Layout(fragment_main.xml)內容要改為 fragment

<?xml version="1.0" encoding="utf-8"?><fragment xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/map"android:layout_width="match_parent"android:layout_height="match_parent"android:name="com.google.android.gms.m

aps.MapFragment"/>

以上請將layout.xml 內容全部取代掉即可,不用改東西

23

Page 24: Google Map Android API V2 setup guide

修改MainActivity.xml

public class MainActivity extends FragmentActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout. fragment_main);

//只載入畫面無進一步動作

}

}

Page 25: Google Map Android API V2 setup guide

載入Google Map

25

Page 26: Google Map Android API V2 setup guide

除錯小提醒

1. 請確認使用 debug.keystore來產生 SHA1

2. 記得在 AndroidManifest.xml中加入 API Key 、meta data與相關權限

3. 確認網路暢通

4. 有無匯入 Google Play services libraries

26

Page 27: Google Map Android API V2 setup guide

Package 要修改的地方

Page 28: Google Map Android API V2 setup guide

如果要執行於模擬器則較麻煩

• 因為模擬器並未安裝Google Play service,所以要另外安裝。

• 建議實機操作

• http://nkeegamedev.blogspot.tw/2012/12/android-google-maps-api-v2.html#uds-search-results

28

Page 29: Google Map Android API V2 setup guide

載入官方example

• https://developers.google.com/maps/documentation/android/intro#sample_code

• 改為自己的 package name 與 API Key

29

Page 30: Google Map Android API V2 setup guide

Google Map Javascript V3

• https://developers.google.com/maps/documentation/javascript/tutorial?hl=zh-tw

• 使用 Javascript來取得地圖網頁• 教學:

– http://nkeegamedev.blogspot.tw/2012/12/android-google-map-v3-1.html

• 好用的生成器:http://www.nap.st/google_map_generator/?lang=zh-TW

30

Page 31: Google Map Android API V2 setup guide

資料

• https://developers.google.com/maps/documentation/android/start

• 原有的怎麼辦?還是可以用,但無法再取得V1 的API Key了。

• http://www.moke.tw/wordpress/computer/advanced/410• http://nkeegamedev.blogspot.tw/2012/12/android-

google-maps-api-v2.html• http://saleh360.blogspot.tw/2012/12/android-running-

google-maps-api-v2_12.html• http://fecbob.pixnet.net/blog/post/38591179-google-

maps-android-api-v2%E4%BD%BF%E7%94%A8%E5%8F%8A%E5%95%8F%E9%A1%8C%E8%A7%A3%E6%B1%BA

31

Page 32: Google Map Android API V2 setup guide

資料

• 中研院GIS中心• http://gis.rchss.sinica.edu.tw/• 中研院GIS中心工具集

http://gis.ascc.net/ISTIS/tools.html• http://simonown.wordpress.com/2009/11/

22/aa0007/• 金門大學 http://gogkmit.wikidot.com/start• 畫出GPS路徑

http://changyy.pixnet.net/blog/post/28058989

32

Page 33: Google Map Android API V2 setup guide

資料

• 座標轉換http://gis.thl.ncku.edu.tw/coordtrans/coordtrans.aspx

• 景點分享

• http://www.wikigps.com/

33

Page 34: Google Map Android API V2 setup guide

補充資料:取得Google MAPs android API V2

• http://wangshifuola.blogspot.tw/2013/01/androidgoogle-maps-android-api-v2.html

• http://www.moke.tw/wordpress/computer/advanced/410

• 按部就班http://cheng-min-i-taiwan.blogspot.tw/2013/04/google-maps-android-api-v2-android.html

34