Зачем собирать мобильное приложение 1С в APK или IPA, если можно работать через платформу разработчика?

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

При разработке мобильных решений на платформе 1С:Предприятие часто возникает вопрос: стоит ли тратить время на сборку полноценного дистрибутива APK (для Android) или IPA (для iOS), если можно просто установить на устройства «1С:Мобильную платформу разработчика» и подключаться к опубликованной на веб-сервере конфигурации? На первый взгляд, работа через «оболочку» кажется удобнее: можно мгновенно вносить изменения в код, и пользователи получат обновление при следующем запуске без переустановки приложения.

Однако при переходе от этапа разработки к промышленной эксплуатации (продакшену) выясняется, что подход с использованием только платформы разработчика имеет критические ограничения. Разберем подробно, почему сборка собственного приложения является обязательным этапом для серьезного проекта.

1. Требования операционных систем и использование внешних компонент

Проанализируем технические ограничения платформ. В случае с iOS выбор практически отсутствует: политика безопасности Apple не позволяет загружать сторонний исполняемый код или сложные конфигурации в обход App Store или корпоративных методов дистрибуции в универсальные «плееры». Сборка IPA — единственный надежный способ запустить свое решение на устройствах Apple.

Что касается обеих операционных систем, крайне важным моментом является использование внешних компонент (ВК). Если ваше приложение должно работать со специализированным оборудованием (сканеры штрихкодов, принтеры этикеток) или использовать расширенные возможности системы через нативный код, эти компоненты необходимо «зашивать» непосредственно в пакет приложения при сборке. В стандартную платформу разработчика вы не сможете добавить произвольную ВК.

2. Работа с мультимедиа и ресурсами

Рассмотрим проблему воспроизведения звуков и использования локальных файлов. Участники обсуждения отмечают, что при работе через платформу разработчика возникают сложности с доступом к медиа-файлам. Например, встроенные функции могут не находить файлы, если они не включены в состав собранного пакета.

Посмотрим на пример кода, который часто используется для воспроизведения аудио:

СредстваМультимедиа.ВоспроизвестиЗвуковоеОповещение(ИмяФайла);

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


СредстваМультимедиа.ВоспроизвестиАудио("/system/media/audio/notifications/Betelgeuse.ogg");

Сборка приложения позволяет сделать интерфейс и звуковое сопровождение независимыми от настроек конкретного телефона.

3. Push-уведомления и системная интеграция

Выясним причину, по которой Push-уведомления считаются «камнем преткновения». Для корректной работы уведомлений через сервисы Google (FCM) или Apple (APNs) приложению требуется уникальный идентификатор (Application ID или Bundle ID). При использовании платформы разработчика уведомления идут через промежуточный сервис 1С, что накладывает ограничения на их кликабельность, скорость доставки и возможности кастомизации.

Собранное приложение позволяет:

  1. Настроить прямую связь с Firebase Cloud Messaging.
  2. Реализовать Deep Linking — возможность открывать приложение по ссылке из почты или мессенджера сразу на конкретном документе.
  3. Обеспечить стабильную работу фоновых задач (например, регулярное снятие координат GPS), так как операционная система будет видеть конкретное приложение с установленными разрешениями, а не общую оболочку.

4. Юридические и лицензионные аспекты

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

Для промышленной эксплуатации (продакшена) необходимо использовать платформу пользователя, которая и предназначена для сборки тиражных или заказных приложений. Использование «желтого значка» 1С (платформы разработчика) на рабочих местах сотрудников может вызвать вопросы при лицензионном аудите. Сборка собственного APK/IPA позволяет легально закрепить использование мобильных рабочих мест в соответствии с приобретенными лицензиями.

5. Пользовательский опыт (UX) и стабильность

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

  1. Установить саму платформу.
  2. Ввести адрес веб-сервера.
  3. Настроить параметры подключения.

Это неудобно и повышает риск ошибок. Собранное приложение имеет собственную иконку, название («Моя доставка», «Склад-Про») и не требует от пользователя знаний об адресах серверов при первом запуске.

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

6. Безопасность данных

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

Резюме

Использование мобильной платформы разработчика без сборки оправдано только на этапе активного прототипирования или для очень узкой группы тестировщиков. Для полноценного внедрения сборка в APK или IPA необходима, так как она обеспечивает правовую чистоту, стабильность системных функций (Push, GPS), корректную работу с внешним оборудованием и качественный пользовательский интерфейс.

← На главную