ton*_*099 4 eclipse android google-maps
我有一个利用谷歌地图的Android应用程序.我已经按照指示操作,并使用调试键使应用程序在调试模式下工作.我从这里找到的debug.keystore中检索了我的SHA-1密钥.
C:\用户\自己\ .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),用它从谷歌的控制台生成一个新的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"
Run Code Online (Sandbox Code Playgroud)
然后我重新导出了我的项目,但这次使用了我之前创建的相同的键,因为它们包含相同的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中 - 谷歌使用不同的方法使用片段.
我错过了什么?
这种方法是否已弃用或应该有效?
如果您正在开发谷歌地图API.你需要有两套map api密钥.通过使用调试密钥库中的SHA1指纹生成的一个映射api密钥,当您在eclipse中调试应用程序并从那里运行时,将使用此映射api密钥.另一个地图api密钥是使用官方或生产密钥库中的SHA1指纹生成的,当您签署或发布应用程序时,将使用此地图api密钥.
我认为您的密钥不匹配,因为清单上的地图api密钥来自调试密钥库,并且您已使用官方密钥库签署了应用程序.
另外我认为你正在开发MapView.现在建议立即使用MapFragments.我这里有链接可能对你有帮助.
快速入门指南:https: //docs.google.com/document/d/1dFzZT0C782BxLkDIUEb711rmsbMmYPURFV_2Cdb36so/edit?usp=sharing
如果您遇到MapFragment或Google Play服务库的问题,请解决问题: 无法实例化android.gms.maps.MapFragment
此外,我在此处有如何/错误声明可能对您有帮助的google-play-services组件.
| 归档时间: |
|
| 查看次数: |
17170 次 |
| 最近记录: |