申請Android API Key時keytool出錯,java.lang.exception:keystore不存在
來源:互聯網
上載者:User
1.首先要得到你的debug keystore位置:
開啟Eclipse--->Windows--->Preferences--->Android--->Build
查看預設的debug keystore位置,例如:C:\Documents and Settings\(你電腦的名字)\.android\debug.keystore
把這個檔案拷貝到C 盤或者其他盤符下面(最簡單的辦法直接拷貝到Java bin 目錄下)
2. keytool 是Java 提供的一個關於鑒權的命令 ,使用這個檔案的話,要定位到JAVA 的bin 目錄下:
例如 我的電腦該目錄為:C:\Program Files\Java\jdk1.6.0_11\bin
在cmd中執行: keytool -list - keystore debug.keystore (最簡單的辦法直接拷貝到Java bin 目錄下)
輸入密碼 android 斷行符號
執行結果:
androiddebugkey, 2009-10-04, PrivateKeyEntry,
指紋認證<MD5>: XX:XX:XX:XX:XX:XX:XX:XX.............
這裡的XX:XX:XX:XX:XX:XX:XX:XX.............就是你的認證指紋
3.開啟 http://code.google.com/intl/zh-CN/android/maps-api-signup.html
填入你的認證指紋(MD5)即可獲得apiKey了,結果顯示如下:
感謝您註冊 Android 地圖 API 金鑰。
您的密鑰是:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
4.把密鑰添加mapview 組件中 ,就Ok了
5. 另外需要添加網路許可權和添加Googlemap類庫:
注意下面標紅部分:
< ?xml version="1.0" encoding="utf-8"?>
< manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.mapapi"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/transglas" android:label="@string/app_name">
<activity android:name=".GeoPoint1"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<uses-library android:name="com.google.android.maps"></uses-library>
< /application>
< uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
< uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
< uses-permission android:name="android.permission.INTERNET"></uses-permission>
< /manifest>