Можно ли использовать расширения конфигурации в мобильной платформе 1С для Android?

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

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

Почему расширения не работают в мобильной платформе

Первое, что необходимо уяснить — это архитектурное отличие Мобильной платформы от десктопной версии. Когда мы создаем мобильное приложение, мы фактически собираем дистрибутив, который содержит в себе скомпилированную конфигурацию. В процессе сборки платформа 1С объединяет все метаданные в единый исполняемый файл.

На текущий момент техническая архитектура мобильной платформы не поддерживает динамическое подключение Расширений (файлов с расширением .cfe) на стороне мобильного устройства. Платформа ожидает увидеть монолитную конфигурацию. Использование расширений, которые успешно работают в Конфигураторе на десктопе, невозможно при сборке мобильного приложения, так как они не учитываются при компиляции дистрибутива под Android.

Различие понятий: Мобильная платформа vs Мобильный клиент

Для правильного проектирования системы важно различать два основных режима работы:

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

Как реализовать доработки для автономного режима

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

Для тех, кому критически важна работа без интернета, 1С предлагает инструмент Мобильный клиент с автономным режимом. Разберем его особенности:

Рекомендации по реализации обмена данными

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

  1. Планы обмена: Используйте стандартные механизмы Планы обмена для отслеживания изменений в данных.
  2. HTTP-сервисы: Реализуйте взаимодействие через HTTP-сервисы, чтобы передавать пакеты данных при восстановлении связи.
  3. Проверка соединения: Используйте методы платформы для определения доступности сервера.

Проанализируем пример логики, которую можно использовать в модуле:


Если РаботаВАвтономномРежиме() Тогда
    // Записываем данные в локальное хранилище
    ЗаписатьДанныеЛокально(Данные);
Иначе
    // Отправляем данные на сервер
    ВызватьHTTPСервис(Данные);
КонецЕсли;

Таким образом, мы выяснили, что расширения в мобильной платформе — это не поддерживаемый сценарий. Планируя разработку, сразу закладывайте архитектуру с прямым изменением конфигурации (например, через механизм Копирования конфигурации или создание собственной конфигурации на базе существующей). Это гарантирует, что весь ваш функционал будет корректно скомпилирован в дистрибутив и доступен пользователю на мобильном устройстве в автономном режиме.

← На главную