1

我从调试密钥库获得了SHA 1 证书

使用它我生成了Google Map V2 Api key

我扩展了片段活动。

我在我的 xml 中使用了“com.google.android.gms.maps.SupportMapFragment”。

当我运行它时,它显示以下错误。“加载地图失败。无法联系 Google 服务器”授权失败。

任何人都可以帮助我从这个问题中恢复过来。

显现

<manifest xmlns:android="http://schemas.android.com/apk/res/android"  
       package="com.example.demomap" 
       android:versionCode="1" 
       android:versionName="1.0" >
    <uses-sdk android:minSdkVersion="8"
        android:targetSdkVersion="15" />
    <permission
         android:name="com.example.demomap.permission.MAPS_RECEIVE"
         android:protectionLevel="signature" />
    <uses-permission android:name="com.example.demomap.permission.MAPS_RECEIVE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <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-feature
        android:glEsVersion="0x00020000"
        android:required="true" />

    <application
        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="AIzaSyDze1i1aL3O2H60NN1URt5g3tz5PA-JYUc"/>

        <activity
            android:name=".MainActivity"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

xml代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/header"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world"
        tools:context=".MainActivity" />

    <fragment xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_below="@id/header"
          android:id="@+id/map"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:name="com.google.android.gms.maps.SupportMapFragment"/>

</RelativeLayout>

爪哇代码:

    package com.example.demomap;
    import com.google.android.gms.maps.SupportMapFragment;
    import android.os.Bundle;
    import android.app.Activity;
    import android.support.v4.app.FragmentActivity;
    import android.view.Menu;
    public class MainActivity extends FragmentActivity {


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    }

    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
    }
4

3 回答 3

0

在 Google Api Console 上,您需要转到 services 标签和 ON Google Map Android API v2 。你完成了吗 ?

于 2013-04-26T09:18:16.353 回答
0

加载地图失败。如果您使用发布 api 密钥收到此消息,则使用 android google maps api v2 联系 Google 服务器时出错 - 这意味着它处于调试模式。因此,从 eclipse 中导出您的应用程序并安装该应用程序。

于 2013-08-28T07:49:22.893 回答
0

事实证明,Google Play 控制台可能正在使用自己的证书对您上传的应用程序进行签名,并创建另一个不同于您用于启用 API 映射的 SHA1 指纹。使用您可以在 Google Play Console>Release Management>App Signing 中找到的那个,在您的 Google Developer Console 中设置那个在此处输入图像描述

于 2018-08-16T00:27:08.883 回答