Разработка мобильных приложений

Для отладки и сборки мобильных приложений, которые будут работать на мобильных устройствах с операционными системами Android или iOS, предназначена мобильная версия «1С:Предприятия» .

Мобильная версия «1С:Предприятия»

Мобильную версию используют только разработчики. Существует три варианта мобильной версии (в отличие от настольной версии). Каждый из этих вариантов реализует разные возможности взаимодействия с информационными базами:

Платформа мобильного клиента

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

Платформа мобильного клиента с автономным режимом

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

Мобильная платформа

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

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

Пользователь запускает мобильное приложение, собранное разработчиком конфигурации. Мобильное приложение исполняет конфигурацию.

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

Еще одним отличием от настольной версии является то, что существует единственный дистрибутив мобильной версии. Он представляет собой архив, в котором содержатся все необходимые файлы для всех операционных систем:

Мобильный клиент

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

Если проводить аналогию с настольной версией «1С:Предприятия», то мобильный клиент является аналогом тонкого клиента, работающего с базой, опубликованной на веб-сервере.

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

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

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

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

Мобильный клиент с автономным режимом

Мобильный клиент с автономным режимом — это мобильное приложение, собранное с помощью платформы мобильного клиента с автономным режимом. Оно может работать в двух режимах:
  • При наличии HTTP-соединения с веб-сервером оно взаимодействует с информационными базами онлайн, аналогично тому, как это делают настольные клиентские приложения;
  • При отсутствии соединения оно работает на мобильном устройстве автономно, использует конфигурацию и данные, которые хранятся в локальной базе на мобильном устройстве.

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

Грубо говоря мобильный клиент с автономным режимом работы — это более комфортный мобильный клиент, который может:
  • Работать напрямую с основной базой при хорошем соединении;
  • Работать офлайн, когда нет связи с основной базой;
  • Предоставлять возможность выбора режима работы (онлайн или офлайн) в случае плохой связи.

Первый запуск мобильного клиента с автономным режимом работы всегда выполняется при наличии HTTP-соединения с веб-сервером. При первом запуске мобильный клиент с автономным режимом получает из основной базы автономную конфигурацию и выполняет инициализацию локальной базы. Также при первом запуске он должен выполнить первоначальное заполнение автономной базы данными из основной базы.

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

Настольная конфигурация может исполняться мобильным клиентом с автономным режимом, для этого требуются доработки среднего уровня сложности, связанные с выделением автономной части конфигурации и адаптацией интерфейса. Подробнее можно прочитать об этом здесь — Мобильный клиент с автономным режимом - Определение состава автономной конфигурации.

Приложение мобильной платформы

Приложение мобильной платформы — это мобильное приложение, собранное с помощью мобильной платформы. Оно может работать автономно на мобильном устройстве.

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

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

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

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

Платформа разработчика

Платформа разработчика — это специальная версия мобильной платформы или платформы мобильного клиента или платформы мобильного клиента с автономным режимом, предназначенная для выполнения отладки на мобильном устройстве и для взаимодействия с 1C:EDT в период разработки мобильной конфигурации.

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