我有一个使用谷歌地图的安卓应用程序。我已按照说明使用调试键使应用程序在调试模式下工作。我已从此处找到的 debug.keystore 检索到我的 SHA-1 密钥。
c:\Users\myself\.android\debug.keystore
使用
c:\Program Files\Java\jdk1.7.0_03\bin>keytool -list -v -keystore c:\debug.keystore
每当我通过在我的测试手机(运行 android 2.3.6)上运行 eclipse 中的应用程序使用系留调试时,地图显示良好。
但是,完成应用程序后,在已发布的应用程序中,地图没有显示。看得见的只有灰色的瓷砖。
我知道这是 API 密钥的问题。
所以我创建了一个新密钥,(以及一个带有它的 apk)用它从谷歌的控制台生成一个新的 API 密钥。我删除了使用密钥生成的 apk,因为它有旧的 ApiKey,并在此处粘贴了新的 api 密钥。
<com.google.android.maps.MapView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:id="@+id/mymap"
android:apiKey="my_api_key"
然后我重新导出了我的项目,但这次使用了与我之前创建的步骤相同的密钥,因为它们包含相同的 SHA-1。
但是,地图仍然没有显示,只出现灰色瓷砖。我通过以下方式在 api 控制台中输入了我的 SHA-1 密钥。
18:3E:1D:8C:xx:xx:xx:xx:xx:xx:xx:xx:xx:x:xx:1D:E1:08:32:8E;com.mycompany.mapapp
我试图恢复到我的调试密钥,但是这次调试应用程序(从 Eclipse 运行)也没有显示任何映射。
我的问题如下。
这仍然是正确的使用方法吗?因为在 -- https://developers.google.com/maps/documentation/android/start#obtaining_an_api_key -- 谷歌使用了不同的片段方法。
我错过了什么?
这种方法是否已弃用或应该有效?