Categories: Google Maps

Не грузит google maps api в приложении android. Как решить

Делал приложение на android с использованием API google maps. В debug версии все работало, на эмуляторе тоже. Карты грузились как надо. На реальном устройстве debug и release версии тоже отображали карты. Но потом после загрузки в маркет это приложение перестало отображать карты.

Как решить эту проблему — читайте в статье.

Описание проблемы

Карты грузятся и показываются как надо до загрузки в маркет. То есть, debug, release версии на реальных устройствах, эмуляторах и веб-страничках (для теста) показывают карту.

Если качаешь приложение с маркета — карты не грузятся. Хотя с тем же токеном гугл карт другие приложения работают.

Что я только не делал — выпускал обновления, делал другое приложение.

Причины почему не загружается api google maps

Я думал что это лимиты или защита по имени пакета. Google объявили, что при определенном количестве запросов пользование картами становится платным. Но у меня не было даже сотни запросов.

Количество запросов к гугл карте за неделю в моем приложении

Искал пути решения, решил добавить карту (подойдет виртуальная). Потому что меня смущала надпись: «Before you begin: Before you start using the Maps SDK for Android, you need a project with a billing account and the Maps SDK for Android enabled. To learn more, see Get Started with Google Maps Platform.»

Списывают 1 доллар, спустя пару минут возвращают. Но это не решило проблему. Значит, причина в другом.

Вспоминаю, что я генерировал хеш для защиты по имени пакета. Чтобы не было предупреждения об уязвимости ключа.

Уведомление об уязвимости ключа в google maps api

Делал и для дебаг, и для релиз версий. Сверил ключи — все правильно. Решил отключить ограничения — и все заработало. Значит причина здесь.

Способы решения когда не грузятся карты гугл

А основной причиной стало то, что google подписывает своим сертификатом приложения при загрузке, если вы не отключили это. То есть поменялся сертификат и естественно хеш-сумма.

Нужно заново генерировать новый ключ и добавлять в ограничения в Настройках API Google Maps. Или просто отключить ограничения.

После этого все заработало, обновлять приложение в маркет не нужно было. Обратите на это внимание, если грузите на маркет и гугл подписывает своим сертификатом приложение. Я убрал все ограничения, и карты заработали.

Если у вас была подобная проблема, напишите как вы ее решили.

veniamin

View Comments

  • Я хочу разработать навигационное приложение, типа "Найти мой автомобиль". Для навигации и карты я хочу использовать google maps api.Но вот думаю: Java против HTML5. Я больше знаком с Java, но в документации API Карт Google было бы легче разработать с помощью HTML5, не так ли?

Share
Published by
veniamin

Recent Posts

Как заработать токен NOT за стейкинг BNB или FDUSD

Очень много разговоров в последнее время за токен NOT. Много бирж будут делать листинг токена,…

6 месяцев ago

Как заработать TON и NOT за стейкинг в телеграм

Телеграм недавно запустил возможность стейкать (замораживать) USDT и получать за это их валюту TON. Очень…

6 месяцев ago

Бонус 100 USDT +10 BUSD от Binance

Биржа криптовалют Binance проводит сейчас промо-акцию: новым пользователям дают ваучеры в сумме 110 долларов. Деньги…

3 года ago

Как парсить длительность видео youtube на php в привычном виде

Самый главный момент в работе с youtube - это получить ключ api через консоль разработчика…

3 года ago

Как удалить чужую сессию пользователя в ubuntu (linux)

Арендую сервер для небольшого проекта на python. И вот приходит мне уведомление, что за сутки…

3 года ago

Как наложить watermark на видео в python windows массово

Тестирую одну схему, и нужно на много видео наложить watermark. Решил делать через Python 3,…

3 года ago