我有一个使用Google API的Android应用程序,在此地图上显示地图和一些标记。当我在模拟器上运行该应用程序时,该应用程序按预期工作,但是当下载到实际的Andorid手机上时,它会崩溃。
这款手机运行在Android 2.3.3和Google API版本15上。我把这一行放在AndroidManifest.xml文件中:
<uses-sdk android:minSdkVersion="7" />
我还使用发布密钥库对 Google API 密钥进行了签名,并确保在对应用程序进行签名时使用相同的密钥库。
如前所述,在模拟器上运行时,该应用程序运行良好,但是当应用程序启动时(安装后(,我确实会收到此错误:
MainActivity couldn't get connection factory client
然后有一堆这种类型的解释/警告:
System.err IOExeption processing: 26
System.err java.io.IOException: Server returned: 3
我是Android编程的新手,因此我将不胜感激可以解决此问题的任何帮助。
首先检查 Android Manifest.xml 中是否设置了适当的权限。检查您是否提供了正确的谷歌地图密钥。创建密钥 http://www.pocketvnc.com/blog/?page_id=511还要尝试生成新的 MAP 密钥并使用它而不是使用旧的密钥。
要在实际硬件上进行测试,您需要使用与调试密钥不同的密钥。在您的帖子之后,您正在使用调试密钥库。
https://developers.google.com/maps/documentation/android-api/v1/?csw=1#getfingerprint
在谷歌上阅读这一段。
重要的是,应用程序导出为具有与 google API 相同的密钥(而不是调试密钥(的签名应用程序。
对于创建有效内容,请阅读该段落:
http://developer.android.com/guide/publishing/app-signing.html#releasemode
然后使用相同的密钥获取谷歌地图 API 密钥。
获得应用程序的密钥后,您可以通过在项目上单击鼠标右键来导出已签名的应用程序,选择Android Tools,然后导出为签名的应用程序包并按照向导进行操作(也许您可以使用该向导创建新密钥(。
希望有帮助。