Почему в собранном мобильном приложении 1С не отображаются карты Google и как это исправить?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Разработка мобильных приложений на платформе 1С зачастую требует интеграции картографических сервисов. Многие разработчики сталкиваются с ситуацией, когда карты корректно отображаются при тестировании через «Мобильную платформу 1С» на устройстве, но перестают работать после самостоятельной сборки APK-файла. В данной статье мы разберем основные причины этого поведения и пошагово пройдем процесс настройки.

1. Проверка настроек в Google Cloud Console

Первое, с чего необходимо начать — убедиться в правильности регистрации вашего проекта в Google Cloud Console. Даже если вы следуете официальным инструкциям, важно соблюсти несколько критических условий:

  1. Активация API: Убедитесь, что в консоли проекта включен Maps SDK for Android.
  2. Биллинг: Обязательно активируйте платежный аккаунт (billing) для проекта. Без привязанной банковской карты Google может ограничивать работу API, даже если вы используете бесплатные лимиты.
  3. API Key: Получите ключ доступа. На этапе отладки рекомендуется отключить ограничения (ограничения по имени пакета Android или SHA-1), чтобы исключить ошибку аутентификации. Если карта заработала без ограничений, вы сможете добавить их позже для безопасности.

2. Роль мобильной платформы и инструментов сборки

Как показывает практика, проблема часто кроется не в самом Google-ключе, а в процессе сборки APK-файла. Платформа 1С предъявляет строгие требования к окружению разработчика:

3. Диагностика через логи

Если вы проверили настройки ключа и пересобрали приложение, но карта по-прежнему пустая, используйте инструмент Logcat. Подключите устройство к компьютеру, откройте Android Studio (или консоль adb) и выполните:

adb logcat | grep Google Maps

Это позволит вам увидеть реальную ошибку, которую выдает сервис. Вы можете обнаружить сообщения типа API key not valid, Quota exceeded или ошибки отсутствия Google Play Services на целевом устройстве.

4. Нюансы работы на различных устройствах

Важно помнить, что Google Maps — это зависимый сервис. Карты не будут отображаться, если на устройстве отсутствуют Google Mobile Services (GMS). Это касается:

Перед тем как винить свой код или настройки 1С, обязательно протестируйте приложение на устройстве, где гарантированно есть доступ к Google Play (например, на стандартном телефоне Samsung или Pixel).

5. Итоговый алгоритм действий

Если вы столкнулись с «пустым окном карты», выполните следующие шаги:

  1. Удалите все старые сборки и убедитесь, что вы используете последнюю доступную мобильную платформу 1С.
  2. Пересоздайте API Key в Google Cloud Console и убедитесь, что биллинг активен.
  3. Установите только необходимые версии Android SDK (начиная с 29 версии).
  4. Пересоберите приложение. Если есть возможность, попробуйте воспользоваться помощью другого разработчика для тестовой сборки с вашим ключом — это поможет понять, проблема в аккаунте или в вашем окружении (JDK/SDK).
  5. Очистите кэш приложения на телефоне после установки новой сборки: Настройки -> Приложения -> [Ваше приложение] -> Память -> Очистить кэш.

Помните, что иногда изменения в настройках Google Cloud могут вступить в силу не мгновенно. Дайте системе некоторое время (иногда до нескольких часов) после создания ключа и активации API.

← На главную