Не удалось активировать Google Maps API v2 в версии выпуска - PullRequest
0 голосов
/ 24 октября 2018

Я не могу активировать API Google Maps v2 Android в своей версии: (

Моя отладочная версия работает правильно. Я опубликовал свое приложение (Android APP BUNDLE) в закрытом тестеканал и я получаю следующую ошибку в logcat:

2018-10-24 13: 21: 50.255 6704-6769 /? E / Google Maps Android API: Ошибка авторизации. См. https://developers.google.com/maps/documentation/android-api/start о том, как правильно настроить карту.

2018-10-24 13: 21: 50.257 6704-6769 /? E / Google Maps Android API: в консоли разработчика Google (https://console.developers.google.com)

Убедитесь, что «Google Maps Android API v2» включен.

Убедитесь, что существует следующий ключ Android:

Ключ API: YOUR_KEY_HERE

Приложение Android (cert_fingerprint>; имя_пакета>): 74: 4E: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: XX: 05: 2A; com.soft.test

И это мое "... / main / res / values ​​/ google_maps_api.xml":

<resources>

    <string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">AIzaXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXM1mI</string>

</resources>

У меня в консоли API следующие отпечатки пальцев:

Google API Console

Мой build.gradle (Модуль: приложение):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.soft.test"
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "@string/version"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            testCoverageEnabled true
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'


    implementation 'com.google.android.gms:play-services-location:16.0.0'
    implementation 'com.android.support:design:27.1.1'
}

Я работаю над этой проблемой в течение нескольких дней.Поиск в Интернете, чтение ответов от stackoverflow, загрузка тестовых версий в Google Play, но не могу найти никакого решения: (

У меня есть три основных вопроса:

  1. У меня есть API KEYв моем google_maps_api.xml, но ошибка logcat по-прежнему гласит «Ключ API: YOUR_KEY_HERE», который выглядит так, как будто приложение не видит API_KEY. Почему? (я думаю, что это может быть основным решением моей проблемы)

  2. В logcat ошибка и вывод команды «keytool -list -v -keystore mystore.keystore» я получил два разных отпечатка пальца? Как это возможно? (Я уверен, что я запускаю команду на истинном хранилище ключей)

  3. Основной вопрос: что не так со мной или с Google? Как я могу активировать MAP API для версии выпуска?

1 Ответ

0 голосов
/ 17 ноября 2018

Я нашел ошибку и решение.

Сначала я жестко закодировал API KEY для манифестирования файла, и это сработало.Тогда я понял, что в каталоге релизов нет файла google_maps_api.xml.

Я добавил файл google_maps_api.xml, чтобы освободить каталог вручную.К сожалению, до сих пор не видно версию выпуска файла google_maps_api.xml в представлении Android:

screenshot

Но Android Studio сгенерировал пакет приложений с файлом каталога выпуска,И я опубликовал правильно работающую версию в Google Play: PETAROUND .:)

Я думаю, что есть ошибка в Android Studio.Я использую Android Studio Build: 3.2.1, на macOS 10.13.6 HighSierra.Теперь я ищу и ищу эту ошибку.Я напишу это здесь, если найду ответ об ошибке.

...