Делал приложение на 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 подписывает своим сертификатом приложения при загрузке, если вы не отключили это. То есть поменялся сертификат и естественно хеш-сумма.
Нужно заново генерировать новый ключ и добавлять в ограничения в Настройках API Google Maps. Или просто отключить ограничения.
После этого все заработало, обновлять приложение в маркет не нужно было. Обратите на это внимание, если грузите на маркет и гугл подписывает своим сертификатом приложение. Я убрал все ограничения, и карты заработали.
Если у вас была подобная проблема, напишите как вы ее решили.
Блин, была похожая проблема, спасибо
Пожалуйста ;-)
Я хочу разработать навигационное приложение, типа «Найти мой автомобиль». Для навигации и карты я хочу использовать google maps api.Но вот думаю: Java против HTML5. Я больше знаком с Java, но в документации API Карт Google было бы легче разработать с помощью HTML5, не так ли?
Большинству проще на хтмл