我需要更新别人开发的Android应用程序。更新本身很简单,它只是对XML布局的简单更改。所以我有以下计划:
- 更新应用程序(已完成(
- 在模拟器上测试它(-地图不起作用(被困在这里
- 在设备上测试
- 向商店发布更新的版本
不幸的是,我的应用程序有很多问题。起初,它没有编译,因为Project Build Target API设置为Android 2.3.3。为什么没有设置为Google API 2.3.3?当我将其更改为Google API时,它会编译并运行,但我的地图无法正确显示。我所能看到的只是灰色的矩形和上面的注释。我得到了下面和它相关的错误消息。
05-11 20:45:42.554: W/System.err(598): java.io.IOException: Server returned: 3
05-11 20:45:42.559: W/System.err(598): at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115)
据我从谷歌和Stack Overflow的搜索中了解,这可能与注册应用程序有关。目前该应用程序正在使用谷歌地图的v1版本。
删除debug.keystore和密钥集没有帮助。
我不知道该怎么办。如有帮助,我们将不胜感激。
为了显示地图,您需要一个与API密钥应用程序正在使用的密钥关联的签名密钥。Android API v1现已弃用,因此您的选择受到限制:
- 联系以前的开发人员,向他们索取
debug.keystore
,它存储在~/.android/
或C:/Users/user.name/.android/
目录中,或者 - 使用发布签名密钥进行测试(这可能很麻烦(
根据应用程序的不同,切换到API v2可能是个好主意,也可能是个坏主意。新的API仍然有一些丑陋的impl错误,但如果地图的使用很简单,您就不会注意到它们。API或v2相当不错。