我在我的应用程序中实现了Google Map V2,一切正常。 检查2-3个手机和标签,它运行完美,
但它在一台设备上每天运行10到15次。之后它不会在同一设备上加载地图并出现以下错误。
05-06 07:17:41.866:E / Google Maps Android API(17217):无法加载地图。无法联系Google服务器。
简而言之,有时它会显示地图,有时则不显示。
我使用从android调试密钥生成的地图密钥。
请为此提出一些解决方案。
我的清单
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ocatalog.mapdemo"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<permission
android:name="com.ocatalog.mapdemo.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="com.ocatalog.mapdemo.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyA9E-oCIM2d5rlhxnsJf66Bly57JXpkiKI" />
<activity
android:name="com.ocatalog.mapdemo.MapDemoActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
答案 0 :(得分:1)
我遇到了同样的问题,地图在多台设备上运行正常,但随机显示一个空白屏幕,有时几天。
当我调试代码时,我可以看到所有操作,如添加标记,叠加等都可以正确执行。 此外,不知道这是否相关,但Geocoder似乎同时正常工作,所以它绝对与Google服务连接问题无关(或者是它?)。
此外,地图也能正常离线工作,并且缓存数据存储得很好(大部分时间都是这样)。
清除我应用的缓存和数据也无济于事。对于Google Services应用程序也没有这样做。 但是,重新安装应用程序似乎在大多数情况下都会修复它,但不会阻止它再次发生。
答案 1 :(得分:0)
在permission
文件中添加以下manifest
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
有Google Maps API v2
和Google Maps Android API v2
。
您应该使用Google Maps Android API v2
。