Убедитесь, что «Google Maps Android API v2» включен. Даже если уже включен - PullRequest
0 голосов
/ 15 ноября 2018

Я работаю над приложением Android, которое включает Google Maps API. Для этого я включил этот API у разработчиков консоли

Maps SDK for Android

Я создал учетные данные, установил ограничение для App Android, добавил пакет приложения, а также отпечаток пальца и на вкладке ограничения API выбрал Maps SDK для Android. После этого в манифесте приложения я написал ключ для карт Google. Когда я собираю приложение из Android Studio, все в порядке (мой телефон, один плюс 6, подключен к компьютеру). Карта работает как я хочу. Но, если я попытаюсь установить сгенерированный APK (подписанный APK из сборки -> Создать подписанный пакет / APK), карта не отобразится, и я получу сообщение об ошибке на logcat

2018-11-15 10:19:45.590 13249-13249/? I/DynamiteModule: Considering local module com.google.android.gms.maps_dynamite:0 and remote module com.google.android.gms.maps_dynamite:221
2018-11-15 10:19:45.590 13249-13249/? I/DynamiteModule: Selected remote version of com.google.android.gms.maps_dynamite, version >= 221
2018-11-15 10:19:45.652 13249-13249/? I/Google Maps Android API: Google Play services client version: 12451000
2018-11-15 10:19:45.655 13249-13249/? I/Google Maps Android API: Google Play services package version: 14367037
2018-11-15 10:19:45.985 633-13359/? I/netd: ;; res_nquery(maps.googleapis.com, 1, 1)
2018-11-15 10:19:46.162 13249-13358/? W/System.err: com.google.maps.errors.RequestDeniedException: This IP, site or mobile application is not authorized to use this API key. Request received from IP address *********, with empty referer
2018-11-15 10:19:46.162 13249-13358/? W/System.err:     at com.google.maps.DirectionsApi$Response.getError(DirectionsApi.java:90)
2018-11-15 10:19:46.162 13249-13358/? W/System.err:     at com.google.maps.internal.OkHttpPendingResult.parseResponse(OkHttpPendingResult.java:289)
2018-11-15 10:19:46.162 13249-13358/? W/System.err:     at com.google.maps.internal.OkHttpPendingResult.onResponse(OkHttpPendingResult.java:207)
2018-11-15 10:19:46.250 13249-13356/? E/Google Maps Android API: Authorization failure.  Please see https://developers.google.com/maps/documentation/android-api/start for how to correctly set up the map.
2018-11-15 10:19:46.251 13249-13356/? E/Google Maps Android API: In the Google Developer Console (https://console.developers.google.com)
    Ensure that the "Google Maps Android API v2" is enabled.
    Ensure that the following Android Key exists:
        API Key: YOUR_KEY_HERE
        Android Application (<cert_fingerprint>;<package_name>): *********;************

Здесь я вижу 2 проблемы:

This IP, site or mobile application is not authorized to use this API

и

Ensure that the "Google Maps Android API v2" is enabled

Я действительно не понимаю. На самом деле, я не могу понять это. Я включил все и до сих пор не работает. Есть что-то еще, чтобы сделать?

1 Ответ

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

Не работает, так как вы не добавили SHA хранилища ключей вашего приложения в Google Api Console. Вы можете получить SHA хранилища ключей, используя следующую команду в терминале Android Studio: -

keytool -list -v -keystore {keystore_name} -alias {alias_name}

Примечание: оба имени должны иметь полный путь к файлу, и если ваш путь содержит пробелы, добавьте путь в кавычках.

Пример:

keytool -list -v -keystore "C:\Users\MG\Desktop\My Projects\test.jks" -alias test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...