Мобильная платформа
Теперь самое интересное. Только что созданное нами приложение можно практически
сразу запустить на мобильных устройствах под управлением ОС iOS и Android.
Реализуется это за счет мобильной платформы, входящей в состав 1С:Предприятия
версии 8.3.
Примечание. Описание установки приложения на мобильную платформу и
запуска приложения на ней приведено в этой книге с целью ознакомления с
возможностями платформы 1С:Предприятие 8.3. В этом разделе
подразумевается, что мобильная платформа в режиме разработчика уже
установлена на мобильное устройство – в случае описанного ниже примера,
эмулятор устройства с ОС Android.
Поведение и внешний вид приложения, запущенного под iOS может
незначительно отличаться от Android.
Для установки и запуска мобильной платформы в режиме разработчика на
устройствах Apple может потребоваться аккаунт разработчика. Кроме этого,
требуется компьютер Mac с установленной средой разработки (XCode).
Для устройств на Android достаточно установить мобильную платформу из
дистрибутива (на момент написания книги «1cem-arm.apk» или «1cem-x86.apk»).
Может потребоваться аккаунт разработчика. Для сборки дистрибутивов
пользовательских приложений потребуются Android SDK и Java SDK. Как собрать
дистрибутив пользовательского приложения – см.главу Пример сборки
мобильного приложения в книге с мастер-классом «Mobile 1C! Пример быстрой
разработки мобильного приложения на платформе 1С:Предприя- тие 8.3» (ISBN
978-5-9677-2075-8, артикул по прайс-листу фирмы «1С» 4601546109781).
Более подробно про установку мобильной платформы – см. статью в
информационной системе 1С:ИТС:
http://its.1c.ru/db/v83doc?db=v83doc#content:83:1
.
Бесплатный тестовый доступ к ресурсу (на момент написания книги) можно
получить по адресу:
http://its.1c.ru/test-drive/
.
Обзор мобильной платформы можно изучить здесь:
http://v8.1c.ru/overview/Term_000000818.htm
.
Мобильная платформа 1С:Предприятия 8.3 – это общее название технологии,
позволяющей создавать приложения, работающие на мобильных устройствах под
управлением операционных систем Android или iOS. Такими устройствами, как правило,
являются различные смартфоны и планшетные ПК.
Мобильное приложение, установленное на устройстве, представляет собой совокупность
мобильной платформы и информационной базы. Информационная база на мобильном
устройстве содержит аналог файловой базы данных (для хранения данных, с которыми
работает пользователь) и мобильное приложение (программный код, исполняющийся на
мобильном устройстве).
Благодаря технологии мобильной платформы мы можем прямо сейчас, без
привлечения стороннего программного обеспечения «отправить» наше
приложение на мобильное устройство – например, с мобильной ОС Android, – и
проверить его работу непосредственно там.
Для этого нам потребуется небольшая адаптация нашего приложения,
установленная мобильная платформа в режиме разработчика на мобильном
устройстве и запущенный веб-сервер на компьютере, где велась разработка
приложения в 1С:Предприятии.
Запускаем конфигуратор и проверяем наше решение на возможность запуска на
мобильном устройстве. Для этого идем в меню Конфигурация, там выбираем
Проверка конфигурации…
Можно сразу задать имя настройки проверки, чтобы потом было удобно к ней
возвращаться. Включаем флажки напротив следующих пунктов:
Проверка логической целостности конфигурации
Поиск некорректных ссылок
Мобильное приложение – клиент
Мобильное приложение – сервер
Поиск неподдерживаемой функциональности
И нажимаем кнопку OK.
Конфигурация нашего решения будет проверена и на возможность выполнения на
мобильной платформе. В результате мы получим сообщение об 11 обнаруженных
ошибок.
Стоит ли пугаться такого рода ошибок? Посмотрим на описание обнаруженных
ошибок, которое было выдано в окно служебных сообщений (см. рис. 12-5).
Конфигурация.МастерКласс8 : Мобильное приложение не поддерживает рабочий
стол, содержащий больше чем одну форму.
Подсистема.Контакты : Класс метаданных не поддерживается платформой
мобильных приложений.
Подсистема.События : Класс метаданных не поддерживается платформой
мобильных приложений.
Подсистема.Финансы : Класс метаданных не поддерживается платформой
мобильных приложений.
Подсистема.Настройки : Класс метаданных не поддерживается платформой
мобильных приложений.
ФункциональнаяОпция.ИспользоватьСобытия : Класс метаданных не
поддерживается платформой мобильных приложений.
Отчет.Затраты : Класс метаданных не поддерживается платформой мобильных
приложений.
Отчет.СколькоДенег : Класс метаданных не поддерживается платформой
мобильных приложений.
Отчет.СколькоДенег.Форма.ФормаОтчета : Класс метаданных не поддерживается
платформой мобильных приложений.
Отчет : Тип не поддерживается платформой мобильных приложений.
Отчет.ГрафикПоДням : Класс метаданных не поддерживается платформой
мобильных приложений.
Рис. 12-5. Список обнаруженных ошибок
После анализа описания становится понятным – в нашем решении используется
функциональность платформы 1С:Предприятие 8, которая в настоящий момент
времени не поддерживается мобильной платформой.
Все дело в том, что мобильное решение базируется на подмножестве объектов
«десктопной» версии платформы и при разработке это следует учитывать. Мы же,
создавая приложение, изначально о мобильном его применении не
задумывались.
Сейчас, для простоты и наглядности, удалим все неподдерживаемые мобильной
платформой объекты конфигурации и сформируем «Мобильный рабочий стол»,
соответствующий ее требованиям.
Примечание. Чтобы сохранить оригинальную конфигурацию, можно в
конфигураторе в меню Администрирование выбрать пункт Выгрузить
информационную базу… Там выбрать каталог сохранения выгрузки и нажать
кнопку Сохранить. Вы всегда сможете вернуться к сохраненной конфигурации и ее
данным, выбрав вариант Загрузить информационную базу…
Итак, удаляем все подсистемы, функциональные опции и отчеты.
Переходим в свойства конфигурации и включаем назначение ее использование –
Мобильное устройство. Значение Персональный компьютер – отключаем.
Обратите внимание! Неподдерживаемая мобильной платформой
функциональность стала недоступна для использования.
Теперь осталось создать рабочий стол для мобильного приложения, и адаптацию
нашего решения можно будет считать завершенной.
Создадим общую форму. Назовем ее МобильныйРабочийСтол, синоним –
Мастер-класс 8.
Пусть на мобильный рабочий стол выводятся списки друзей и событий – то, что
предположительно будет наиболее востребовано. Создадим для формы два
реквизита с типом ДинамическийСписок.
Первым будет Друзья.
В свойствах реквизита укажем основную таблицу – Справочник.Друзья.
Аналогично создаем второй реквизит – События. Основная таблица –
Справочник.События.
Теперь перетаскиваем мышью оба реквизита на форму. Можно выделить сразу два
реквизита, нажав клавишу Shift и отметив их мышью.
На возникающие вопросы о добавлении колонок отвечаем утвердительно.
В результате на форме будут размещены две таблицы, содержащие все поля из
соответствующих им справочников – Друзья и События.
Убираем из отображения второстепенные поля. Для таблицы Друзья это будут
ДрузьяКод, ДрузьяПол и ДрузьяСтатус.
Для таблицы События убираем СобытияКод и СобытияСтатус.
Открываем настройку Рабочей области начальной страницы (см.рис. 8-19). Удаляем
оттуда все оставшиеся там формы (регистра слева и справочника Друзья – справа).
Устанавливаем Шаблон начальной страницы – Одна колонка. После чего добавляем в
список форм – общую форму МобильныйРабочийСтол.
На этом подготовка нашего решения к работе на мобильном устройстве
завершена. Сохраняем все изменения – F7. Можно снова выполнить проверку
конфигурации для работы на мобильной платформе (см.рис. 12-2), и на этот раз
она завершится без ошибок.
Остается отправить приложение на планшет или коммуникатор, после чего
запустить его там. Технология передачи приложения на мобильное устройство
схожа с его публикацией для работы под веб-клиентом, описанной в предыдущей
главе.
На веб-сервере публикуется готовое приложение в виде одного xml-файла,
мобильная платформа с мобильного устройства подключается к этому веб-
серверу, получает этот xml-файл и устанавливает его у себя. После чего
приложение готово к запуску на мобильном устройстве.
Запускаем конфигуратор. Идем в меню Конфигурация, там выбираем Мобильное
приложение, а внутри – Публиковать…
Параметры публикации приведены на рисунке 12-19. Имя – mkmob. Веб-сервер – тот,
который запущен на компьютере. Каталог вручную менять не рекомендуется. После
задания всех параметров нажмем Опубликовать.
Дождемся сообщения об успешной публикации. Если в процессе публикации
будут возникать какие-либо вопросы – отвечаем утвердительно.
На этом действия на компьютере завершены. Теперь нужно запустить мобильную
платформу на мобильном устройстве и нажать кнопку добавления нового
приложения.
В строке подключения к серверу пишем URL к опубликованному приложению –
http://10.1.2.87/mkmob
Примечание. IP-адрес 10.1.2.87, по которому осуществляется доступ к веб-
серверу, где опубликовано мобильное приложение, используется в качестве
примера. На вашем компьютере адрес может быть иным – смотрите свойства
сетевого подключения, по которому мобильное устройство подключается к веб-
серверу.
Мобильное устройство должно находиться в сети (например, локальной Wi-Fi)
обеспечивающей доступ к веб-серверу, на котором опубликовано мобильное
приложение.
Включаем необходимые опции и нажимаем кнопку Загрузить.
После подключения к веб-серверу, мобильная платформа получит параметры
приложения, предложит настроить его параметры. После нажатия на кнопку Готово –
установит его на мобильное устройство.
Приложение появится в списке доступных, откуда его можно будет выбрать для запуска.
Запускаем приложение, нажав на его название, и проверяем его работоспособность.
Обратите внимание – Командный интерфейс основного раздела (см. рис. 8-32) у
мобильной платформы «переехал» в меню.
Важный момент – приложение «приехало» на мобильное устройство пустым, без
данных. Это не ошибка. Вопрос синхронизации и обмена данными между
несколькими экземплярами приложения или между различными приложениями –
отдельная задача, сама по себе довольно интересная. Платформа
1С:Предприятие прекрасно умеет справляться с такими задачами (см.
http://v8.1c.ru/overview/Term_000000151.htm
) – правда это уже вопросы другого
мастер-класса, например, «Mobile 1C!» (см. «Домашнее задание №3») :-)
В итоге за несколько минут мы получили мобильную версию нашей CRM-системы,
способную работать под управлением мобильных операционных систем iOS и
Android.
Если бы мы как разработчики приложения планировали раздавать его
пользователям, то у мобильной платформы 1С:Предприятия есть вариант
«упаковки» собственно платформы и нашего решения в один дистрибутив,
который можно выложить в App Store или Google Play (см.
http://v8.1c.ru/overview/Term_000000818.htm
или главу Пример сборки мобильного
приложения в мастер-классе «Mobile 1C!»).
На данный момент в App Store и Google Play уже присутствуют мобильные решения от 1C
– достаточно сделать поиск по издателю 1C LLC.
|