@gochag

Не отображается карта google map, после публикации приложения. Как решить?

Здравствуйте, мучаюсь уже неделю не могу решить проблему. Написал приложение которая получает координаты автобусов в ральном времени и наносит (маркеры) на карту их расположение.

Использовал стандартный макет Google Map Activity. Студия в автоматическом режиме создает в папках *src/release/values/* и *src/debug/values/* файл *google_map_api.xml*

По связке ключей я создал файл .jks по инструкции и получил свой sha-1 ключ F7:19:A0:25:6D:A2:AA:9D.... . (утилитой keytool)

В GoogleAPIs Console создал проект и получил два ключа с своим SHA-1 (F7:19:A0:25:6D:A2:AA:9D...) и автоматически сгенерированным SHA-1 для дебага.

Полученные ключи я добавил в xml файл, запустил приложение программа заработало но когда я публикую приложение (Google Play) карта не отображается.

Релизный и дебаг ключ оба работают в режиме отладки

Дебаг ключ google map api
To get one, follow this link, follow the directions and press "Create" at the end:

https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=F7:19:A0:25:6D:A2:AA%3Bcom.gochag.comand.neqliyyat

You can also add your credentials to an existing key, using these values:

Package name:
39:5F:45:EC:40:2B:0B

SHA-1 certificate fingerprint:
39:5F:45:EC:40:2B:0B
F7:19:A0:25:6D:A2:AA
Alternatively, follow the directions here:
https://developers.google.com/maps/documentation/android/start#get-key

Once you have your key (it starts with "AIza"), replace the "google_maps_key"
string in this file.


Release
AIzaSyAoE7JLM

Debug
AIzaSyB2jp1oj
-->
<string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">AIzaSyB2jp1oj</string>


Релизный ключ google map api

To do this, you can either add your release key credentials to your existing
key, or create a new key.

Note that this file specifies the API key for the release build target.
If you have previously set up a key for the debug target with the debug signing certificate,
you will also need to set up a key for your release certificate.

Follow the directions here:

https://developers.google.com/maps/documentation/android/signup

Once you have your key (it starts with "AIza"), replace the "google_maps_key"
string in this file.
-->
<string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">AIzaSyAoE7JL</string>


Манифест
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.gochag.comand.neqliyyat">
    <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.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Avtobus.Bus_Route" />
        <activity android:name=".Avtobus.EtrafliAxtar" />

        <!--
             The API key for Google Maps-based APIs is defined as a string resource.
             (See the file "res/values/google_maps_api.xml").
             Note that the API key is linked to the encryption key used to sign the APK.
             You need a different API key for each encryption key, including the release key that is used to
             sign the APK for publishing.
             You can define the keys for the debug and release targets in src/debug/ and src/release/.
        -->

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

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


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


    </application>

</manifest>

Билдгредл
apply plugin: 'com.android.application'
android {
    signingConfigs {
    }
    compileSdkVersion 24
    buildToolsVersion "25.0.0"
    defaultConfig {
        applicationId "com.gochag.comand.neqliyyat"
        minSdkVersion 15
        targetSdkVersion 24
        versionCode 20
        versionName "v.1.0s"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {c
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.0'
    compile 'com.android.support:design:25.0.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:support-v4:24.2.1'
    compile 'com.android.support:cardview-v7:25.3.1'
    compile 'com.android.support:recyclerview-v7:25.3.1'
    compile 'com.google.android.gms:play-services-maps:10.0.1'
    testCompile 'junit:junit:4.12'
}
  • Вопрос задан
  • 674 просмотра
Пригласить эксперта
Ответы на вопрос 1
@mr_serg77
Недавно только был вопрос тут на эту тему. Соль там была кажется в хэшах (человек указал хэш дубагг версии, вместо релизной).
Да и вообще, обновите версию ГАПСов до последней.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы