我有一个使用谷歌地图的安卓应用程序。 我按照说明进行操作并使用调试密钥使应用程序在调试模式下运行。 我已从此处找到的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
每当我通过在测试手机上从eclipse运行应用程序来使用系留调试时,地图都能正常显示(该手机运行android 2.3.6)。
然而,在完成应用程序后,在发布的应用程序中地图未能显示。只有灰色瓷砖可见。
我知道这是API密钥的问题。
因此,我创建了一个新的密钥(和一个带有新密钥的apk),并使用它从google控制台生成了一个新的API密钥。我删除了使用旧ApiKey生成的apk,并将新的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--谷歌使用了不同的方法使用片段。
我错过了什么?
这种方法已经过时还是应该起作用?