未調整過的AVD,無法使用Google Maps,只能使用實機測試!
Google Maps Android v1 API Key (Android 2.3.X)
已停止申請v1 key,2014/02/17
1 https://developers.google.com/maps/documentation/android/v1/maps-api-signup?hl=zh-TW
1.1 填入「MD5碼」(注1)
1.2 取得 API Key
2 ObjectView使用「com.google.android.maps.MapView」
2.1 android:apiKey = “ Your API Key ”
3 設定AndroidManifest.xml
3.1 <uses-library android:name=”com.google.android.maps” /> Before </application>
3.2 Set Permission - uses-library android:name
3.2.1 android.permission.INTERNET
3.2.2 android.permission.ACCESS_FINE_LOCATION
3.2.3 android.permission.COARSE_LOCATION
Google Maps Android v2 API Key (Android 4.0.X)
1 https://code.google.com/apis/console/
2 左方功能表 Services
2.1 Google Maps Android API v2 「OFF」→「ON」
3 左方功能表 API Access
3.1 下方「Create new Android key」
3.2 填入 「SHA1;PackageName」,中間「;」隔開,前方放SHA1碼,後方放PackageName (注2)
3.3 取得 API Key
4 Lib → Project / Properties / Android / Library / Add /
4.1 <android-sdk-foldr>/extras/google/google_play_services/samples/maps
4.2 Project Build Target Android 4.0.3(API15) or Google APIs 4.1(API16)
5 ObjectView使用「MapFragment Class」,也就是「fragment」
5.1 class=”com.google.android.gms.maps.MapFragment”
6 設定AndroidManifest.xml
6.1 Set Permission - uses-library android:name
6.1.1 android.permission.INTERNET
6.1.2 android.permission.ACCESS_FINE_LOCATION
6.1.3 android.permission.ACCESS_COARSE_LOCATION
6.1.4 android.permission.WRITE_EXTERNAL_STORAGE
6.1.5 com.google.android.providers.gsf.permission.READ_GSERVICES
6.1.6 moke.test.googlemap.permission.MAPS_RECEIVE
6.2 <permission android:name=”moke.test.googlemap.permission.MAPS_RECEIVE”android:protectionLevel=”signature” />
6.3 <use-feature android:glEsVersion=”0x00020000” android:required=”true” />
6.4 <meta-data android:name=”com.google.android.maps.v2.API_KEY”android:value=” Your API Key “ /> before </application>
以下為MD5和SHA1的建立方法,輸入內容為假資料,僅供參考,請依自己的資料輸入
C:\Program Files\Java\jdk1.6.0_12\bin>keytool -genkey -v -keystore d:\app\com.company.googlemaps -alias key_name -keyalg RSA -keysize 2048 -validity 10000
輸入 keystore 密碼:
您的名字與姓氏為何?
[Unknown]: Name
您的編制單位名稱為何?
[Unknown]: MIS
您的組織名稱為何?
[Unknown]: Company
您所在的城市或地區名稱為何?
[Unknown]: Taiwan
您所在的州及省份名稱為何?
[Unknown]: Taiwan
該單位的二字國碼為何
[Unknown]: TW
CN=name, OU=MIS, O=company, L=Taiwan, ST=Taiwan, C=TW 正確嗎?
[否]: y
針對 CN=name, OU=MIS, O=company, L=Taiwan, ST=Taiwan, C=TW 產生有效期為 10,000 天的 2,048 位元 RSA 金鑰對以及自我簽署憑證 (SHA1withRSA)
輸入 <key_name> 的主密碼
(RETURN 如果和 keystore 密碼相同):
重新輸入新密碼:
[儲存 d:\app\com.company.googlemaps]
C:\Program Files\Java\jdk1.6.0_12\bin>
本檔案需永久保留,以後發佈APP,皆需此 keystore 檔,無法更換!
C:\Program Files\Java\jdk1.6.0_12\bin>keytool -list -v -keystore "d:\app\com.company.googlemaps" -storepass android -keypass android
Keystore 類型: JKS
Keystore 提供者: SUN
您的 keystore 包含 1 輸入
別名名稱: key_name
建立日期: 2013/1/18
項目類型:PrivateKeyEntry
認證鏈長度: 1
認證 [1]:
所有者:CN=name, OU=MIS, O=company, L=Taiwan, ST=Taiwan, C=TW
核發者:CN=name, OU=MIS, O=company, L=Taiwan, ST=Taiwan, C=TW
序號:50f8fb5e
自以下日期開始生效:Fri Jan 18 15:35:58 CST 2013,直到:Tue Jun 05 15:35:58 CST 2040
憑證指紋:
MD5:JJ:JJ:JJ:KK:85:31:BC:21:CB:B7:D4:E4:AE:6D:38:49 (注1)
SHA1:34:BB:CC:66:EE:66:AA:88:99:68:69:23:A3:F7:F4:6C:AF:B6:C0:27 (注2)
簽名演算法名稱:SHA1withRSA
版本:3
*******************************************
*******************************************
1. v1 和 v2 的 API Key 無法交替使用,v2 的 Key 拿到 MapView 使用,會得到一片只有格子線的空白地圖。
2. v1 申請到的 API Key 需另行登記起來。
3. Google 在推 v2 ,加上Android版本更新速度很快,所以 v1 在將來會有消失的一天。 (by 2013/1/21)
留言列表