我的每个项目都需要一个新的 API 密钥,还是只需要一个可以在任何项目中多次使用的 API 密钥?
3 回答
每个 Google Maps API 密钥都与您用于签署应用程序的密钥库相关联。因此,如果您使用相同的密钥库对所有应用程序进行签名,则可以使用相同的 Maps API 密钥。
但我不建议您使用相同的 Maps API 密钥。因为现在 Google Maps API 不再完全免费。每个 Maps API 密钥每天的查询次数有限。为每个应用程序创建不同的 Maps API 密钥是防止限制 Google Maps 查询的好方法。
密钥与证书的 MD5 指纹相关联,因此每个应用程序都需要一个新密钥。
获取地图 API 密钥
MapView 对象显示从 Google 地图服务下载的地图图块。在您可以使用 Google 地图数据之前,您必须注册地图服务,同意服务条款并提供您将用于签署您的申请的证书的 MD5 指纹。对于每个注册的证书指纹,该服务都会为您提供一个 Maps API 密钥 - 一个字母数字字符串,用于唯一标识您和您的证书。然后,您将 API 密钥存储在 MapView 对象中,以便在它们请求地图数据时,服务器可以确定您已注册该服务。
只需在 cmd 提示符下写下这些行以提取 MD5 指纹。
keytool.exe -list -alias androiddebugkey -keystore "C:\android\debug.keystore" -storepass android -keypass android
获取 MD5 指纹后复制 MD5 证书指纹并导航您的网络浏览器到:http ://code.google.com/android/maps-api-signup.html 。按照页面上的说明完成申请并获取 Google Maps 密钥。
要在您的 Android 应用程序中使用 Google 地图,您需要修改您的 AndroidManifest.xml 文件,将元素与 INTERNET 权限一起添加:
要在您的 Android 应用程序中显示 Google 地图,请修改位于 res/layout 文件夹中的 main.xml 文件。您应使用该元素在您的活动中显示 Google 地图。另外,让我们使用元素来定位活动中的地图:
例如 :
<com.google.android.maps.MapView
android:id="@+id/mapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:enabled="true"
android:clickable="true"
android:apiKey="0l4sCTTyRmXTNo7k8DREHvEaLar2UmHGwnhZVHQ"
/>