Android上的Google地图显示为灰色屏幕

时间:2015-04-30 00:20:32

标签: android google-play google-maps-android-api-2

之前我遇到过这个问题,谷歌地图显示灰色屏幕,没有显示地图。

我通过在测试环境中安装Google服务解决了这个问题,并且工作正常。

现在的问题是,已发布的应用为从Google Play安装该应用的用户显示相同的灰色屏幕(无地图)。

我无法让人们去下载Google服务,以便让我的应用运行起来。

无论如何,我可以将这些服务嵌入我的应用程序或任何其他方式来解决此问题。

由于

我在google_maps_api.xml

中有这个
 <string name="google_maps_key" translatable="false" templateMergeStrategy="preserve">
     AIzaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 </string>

我在清单中也有这个

    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="@string/google_maps_key" />

4 个答案:

答案 0 :(得分:3)

您必须检查用户是否安装了Google Play服务。

private static final int PLAY_SERVICES_RESOLUTION_REQUEST = 9000;

private boolean checkPlayServices() {
    int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
    if (resultCode != ConnectionResult.SUCCESS) {
        if (GooglePlayServicesUtil.isUserRecoverableError(resultCode)) {
            GooglePlayServicesUtil.getErrorDialog(resultCode, this,
                    PLAY_SERVICES_RESOLUTION_REQUEST).show();
        }
        return false;
    }
    return true;
}

Android会自动处理问题的解决方案(如果可以解决)。

答案 1 :(得分:2)

你有以下内容:

  

将Google Play服务版本添加到您应用的清单

     

编辑应用程序的AndroidManifest.xml文件,并在元素中添加以下声明。这会嵌入应用程序编译的Google Play服务版本。

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

答案 2 :(得分:2)

您可能使用了错误的API密钥。检查您是否使用Android的API密钥,而不是Javascript。基本上,如果你需要密钥,谷歌“获取API密钥android”。这里:https://developers.google.com/maps/documentation/android-api/signup

答案 3 :(得分:1)

请添加权限:

<permission
    android:name="com.pkg.map.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" >
</permission>

此处com.pkg.map是存在地图活动的包名称。