Как использовать сервис сборки и публикации мобильных приложений 1С для автоматизации разработки

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

Разработка мобильных приложений на платформе 1С:Предприятие долгое время требовала от программиста владения целым стеком сторонних технологий: от настройки Android SDK и Java до необходимости покупки компьютера Mac для компиляции приложений под iOS. С появлением специализированного сервиса сборки и публикации процесс значительно упростился. В этой статье мы подробно разберем, как работает этот инструмент, как обойти технические ограничения операционных систем и как автоматизировать доставку обновлений пользователям.

Основные возможности и архитектура сервиса

Проанализируем, что именно предлагает нам фирма 1С. Сервис представляет собой облачную инфраструктуру, которая берет на себя роль «сборщика». Вместо того чтобы разворачивать на локальном компьютере тяжеловесные среды разработки, мы передаем подготовленную конфигурацию (мобильное приложение или мобильный клиент) в облако 1С. Рассмотрим основные этапы этого процесса:

  1. Подготовка проекта: В конфигураторе или 1C:EDT формируется файл мобильного приложения.
  2. Передача данных: Проект выгружается в сервис через API или специальный интерфейс.
  3. Облачная сборка: На серверах 1С запускаются процессы компиляции. Для Android используется Gradle, для iOS — Xcode, работающий на виртуальных машинах с macOS.
  4. Получение результата: Вы скачиваете готовый файл .apk (для Android) или .ipa (для iOS), либо инициируете автоматическую публикацию в магазины приложений.

Сборка под iOS без использования физического компьютера Mac

Выясним одну из самых важных проблем: как собрать приложение для iPhone, если у вас нет Mac? Традиционно это было невозможно, так как Apple требует наличия Xcode, который работает только на macOS. Сервис сборки решает эту задачу. Разберем по шагам, как это реализовано:

Вам больше не нужно устанавливать macOS в виртуальную машину или покупать Mac Mini. Сервис 1С предоставляет доступ к облачному Xcode. Однако важно понимать, что юридические требования Apple никуда не исчезают. Вам все равно потребуется аккаунт Apple Developer Program. Процесс выглядит следующим образом:

  1. Вы генерируете запрос на сертификат (CSR) прямо через интерфейс сервиса.
  2. Загружаете полученный сертификат в панель разработчика Apple и получаете файл подписи.
  3. Передаете этот файл и Provisioning Profile в сервис сборки 1С.
  4. Сервис подписывает собранный .ipa файл вашими ключами.

Таким образом, мы решаем техническую проблему отсутствия оборудования, сохраняя при этом легитимность приложения для App Store.

Автоматизация публикации в сторы: Google Play, App Store и RuStore

Разберем ситуацию с публикацией. Сервис позволяет не только собрать пакет, но и отправить его в магазины приложений автоматически. Посмотрим на нюансы этого процесса, которые часто вызывают вопросы у разработчиков. Для успешной публикации необходимо предоставить сервису доступ к API консолей разработчика.

Важный момент: многие опасаются передавать логины и пароли. Современные версии сервиса используют механизм авторизации через API-ключи, что гораздо безопаснее. Проанализируем требования маркетов, которые сервис помогает автоматизировать:

Помимо международных площадок, теперь поддерживается и RuStore, что критически важно для корпоративных приложений в текущих условиях. Мы можем настроить цепочку публикации так, что одна и та же конфигурация будет уходить в разные сторы с разными настройками подписи.

Хитрости обновления мобильных приложений без пересборки APK

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

Для этого мы воспользуемся механизмом публикации списка баз. Если вы используете типовую мобильную платформу 1С (несобранную в отдельный пакет), можно настроить файл ibases.v8i. Посмотрим, как это реализовать. Нам необходимо создать XML-файл описания мобильной конфигурации (традиционно называется 1cema.xml) и разместить его на веб-сервере.

Проанализируем параметры подключения. В мобильном устройстве в настройках списка баз можно указать дополнительный параметр:

AdditionalParameters=http://mysite.ru/mobile/1cema.xml

Разберем, что это дает: при каждом запуске мобильная платформа будет обращаться к этому URL. Если версия конфигурации на сервере выше, чем на устройстве, 1С предложит пользователю обновиться. Это происходит мгновенно и не требует прохождения модерации в Google Play или App Store. Однако помните, что этот метод работает только для изменений в метаданных 1С. Если же вы меняете саму мобильную платформу (например, переходите с 8.3.18 на 8.3.21), то без полной пересборки и переустановки приложения не обойтись.

Интеграция с 1C:EDT и новыми версиями платформы

Посмотрим, как изменился процесс взаимодействия с сервисом в последних релизах. Начиная с версии 8.3.20 и выше, а также в 1C:EDT, появились встроенные помощники. Нам больше не нужно вручную выгружать файлы и заходить на веб-портал сервиса.

Рассмотрим пошаговый алгоритм работы в 1C:EDT:

  1. Открываем проект мобильного приложения.
  2. Выбираем пункт меню «Опубликовать в сервисе сборки».
  3. Указываем учетные данные портала 1С:ИТС.
  4. Выбираем нужный профиль сборки (Android/iOS).
  5. Дожидаемся завершения процесса и получаем ссылку на готовый дистрибутив.

Практический совет: используйте Мобильный клиент вместо Мобильного приложения, если вашим пользователям требуется постоянная связь с центральной базой и сложная бизнес-логика, которую трудно дублировать на мобильном устройстве. Сервис сборки позволяет «зашить» адрес вашей серверной базы прямо в исполняемый файл, чтобы пользователю не пришлось вводить длинные URL-адреса вручную при первом запуске.

Безопасность и хранение ключей

Проанализируем вопрос безопасности. Сборка приложения требует использования секретных ключей подписи (Keystore для Android и сертификаты .p12 для Apple). Сервис сборки 1С предоставляет защищенное облачное хранилище для этих данных.

Разберем, почему это удобно в командной разработке:

В заключение отметим, что использование сервиса сборки — это не просто удобство, а переход к промышленному стандарту CI/CD (Continuous Integration / Continuous Delivery) в мире 1С. Это позволяет сократить время вывода мобильного решения на рынок и избавляет от необходимости содержания сложного парка оборудования и настройки специфического системного ПО.

← На главную