Разработка мобильного клиента на виртуальном устройстве

Этот вариант сложнее, чем другие, по следующим причинам:
В этом варианте вам потребуется:
  1. Запустить 1C:EDT от имени администратора;
  2. Скачать мобильную версию «1С:Предприятия» и связать ее с 1C:EDT;
  3. Установить Android Studio и связать ее с 1C:EDT;
  4. Установить веб-сервер Apache 2.4 или IIS;
    1. Если вы не планируете использовать смартфон по USB, то настраивать веб-сервер не нужно. Если вы не уверены, то лучше сразу его настроить;
  5. Создать проект мобильного приложения;
  6. Создать и запустить виртуальное мобильное устройство;
  7. Запустить отладку мобильного клиента;

Запустить 1C:EDT от имени администратора

В процессе работы вам понадобится публиковать информационную базу на веб-сервере. Для этого 1C:EDT должна будет внести изменения в конфигурационные файлы сервера. Если они расположены, например, в каталоге Program Files, то без прав администратора 1C:EDT это сделать не сможет. Поэтому сразу перезапустите среду разработки:
  1. Завершите работу 1C:EDT;
  2. Завершите работу программы 1C:EDT Start, если вы ее используете;
  3. Если вы используете 1C:EDT Start, запустите ее от имени администратора. Для этого на ярлыке, команде меню или на исполняемом файле нажмите Запуск от имени администратора в контекстном меню.
  4. После этого обычным образом создайте новый проект;
  5. Если вы не используете 1C:EDT Start, запустите 1C:EDT от имени администратора аналогичным образом, с помощью контекстной команды на ярлыке, команде меню или на исполняемом файле.

Скачать мобильную версию «1С:Предприятия» и связать ее с 1C:EDT

Для отладки и сборки мобильных приложений, которые будут работать на мобильных устройствах, предназначена мобильная версия «1С:Предприятия». Подробнее о мобильной версии «1С:Предприятия» читайте здесь.
  1. Перейдите на портал ИТС и скачайте последнюю мобильную версию «1С:Предприятия»;
  2. Это архив, который не нужно распаковывать. Поместите его в любой каталог, из которого его будет использовать 1C:EDT;
  3. В 1C:EDT нажмите Окно > Параметры... > V8 > 1С:Предприятие > Версии мобильной платформы;
  4. Нажмите Добавить...;
  5. Нажмите Файл... и выберите скачанный архив;
  6. Нажмите Готово. Новая версия появится в списке;
  7. Нажмите Применить и Закрыть.

Установить Android Studio и связать ее с 1C:EDT

Android Studio — это среда разработки приложений для операционной системы Android. Она требуется для того, чтобы вы могли отлаживать приложения на виртуальных устройствах или на смартфонах, подключенных по USB.
  1. Установите Android Studio как это описано в документации «1С:Предприятия»;
    1. В процессе установки запомните каталог, в который будет установлен Android SDK. Он понадобится вам для настройки 1C:EDT.
    2. Если вы этого не сделали, то узнать его можно позже. В стартовом окне нажмите More Actions > SDK Manager и скопируйте значение поля Android SDK Location.
  2. Перейдите в 1C:EDT и нажмите Окно > Параметры... > V8 > 1С:Предприятие > Версии мобильной платформы > Настройки Android;
  3. В поле Расположение Android SDK введите путь, который вы запомнили на шаге 1.
  4. Нажмите Применить и Закрыть.

Установить и настроить веб-сервер Apache 2.4 или IIS

Веб-сервер необходим для того, чтобы опубликовать на нем информационную базу, к которой будет обращаться мобильный клиент. В качестве веб-сервера можно использовать Internet Information Services (IIS) или Apache 2.4.

IIS поставляется вместе с операционной системой Windows.

Apache 2.4 можно установить отдельно:
  1. Скачайте дистрибутив, например, здесь;
  2. Разархивируйте его в стандартный каталог C:\Apache24;
    • Если будете использовать нестандартный каталог, тогда в файле Apache24\conf\httpd.conf замените ServerRoot с "c:/Apache24" на свой каталог;
  3. Установите Apache в качестве службы: Apache24\bin\httpd.exe -k install. Запускайте и останавливайте его используя диспетчер управления службами;
  4. Если вариант в качестве службы вам не подходит, можно запускать и останавливать httpd.exe вручную.
После того, как веб-сервер запущен, добавьте его в 1C:EDT:
  1. Нажмите Окно > Показать панель > Веб-серверы;
  2. Обновите список серверов или добавьте новый вручную;

Также можно просто перезапустить 1C:EDT. При старте она автоматически определит установленные на компьютере веб-серверы.

Если вы планируете разрабатывать мобильного клиента не только на виртуальном устройстве, но и использовать смартфон по USB, сразу измените стандартный порт Apache 2.4. В противном случае, если вы сделаете это после публикации информационной базы на сервере, вам придется менять этот порт и в публикации:

  1. Откройте в текстовом редакторе файл Apache24\conf\httpd.conf;
  2. В блоке Listen замените Listen 80 на Listen 8000, например;
  3. Сохраните изменения и закройте файл;
  4. Перезапустите Apache 2.4, чтобы изменения вступили в силу.
Если вы используете IIS, то:
  1. В приложении Диспетчер службы IIS добавьте дополнительный порт (например, 8008);
  2. Этот порт должен быть первым в списке. Обычно добиться этого можно только удалив уже имеющиеся порты и добавив их снова.

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

Чтобы создать новый проект мобильного приложения выполните следующие действия:

  1. Создайте новый проект конфигурации;
    Стандартно в новом проекте содержится конфигурация, предназначенная для работы на настольном компьютере.
  2. Измените свойство конфигурации Назначения использования. Для этого:
    • Выделите проект в панели Навигатор;
    • В панели Свойства откройте список у свойства Назначения использования;
    • Установите флажок Приложение для мобильной платформы.
      При этом можно оставить или снять флажок Приложение для платформы.

Установка одного или другого флажка «настраивает» 1C:EDT на разработку конкретного вида приложения. Например, если флажок Приложение для мобильной платформы установлен, а Приложение для платформы снят, то в проекте будут недоступны типы объектов, которые нельзя использовать в мобильной версии «1С:Предприятия».

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

Создать и запустить виртуальное мобильное устройство

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

Чтобы создать виртуальное устройство выполните следующие действия:
  1. Запустите Android Studio;
  2. Нажмите Projects > More Actions > Virtual Device Manager > Create Device на экране приветствия;
  3. Выберите категорию (Category) и имя (Name) устройства, например PhonePixel 7 и нажмите Next;
  4. Выберите основные параметры устройства:
    • Имя устройства (Name), которое позволит вам отличить его от других виртуальных устройств, с которыми вы будете работать;
    • Тип системного образа. Желательно выбирать Default android system image или версию с Google APIs х86 или х86_64;
  5. На вкладке Additional Settings задайте дополнительные параметры устройства:
    • Установите способ запуска устройства (Default boot) как Cold. Это значит, что запуск устройства будет выполняться с момента включения питания;
    • Проконтролируйте размер внутреннего хранилища (Internal storage). Оно не должно быть меньше 2 Гб, а для устройств, использующих API 29+, лучше использовать от 6 Гб;
    • Для начала отладки 1C:EDT должна будет передать на устройство виртуальную платформу разработчика. SD-карты, автоматически созданные Android Studio, не всегда корректно обрабатывают операции внешней записи через Android Debug Bridge. Если вы столкнетесь с такой проблемой, то создайте SD-карту в виде внешнего файла (https://developer.android.com/tools/mksdcard) и укажите этот файл в свойстве Expanded storage > Existing image;
  6. Нажмите Finish. После скачивания образа устройство появится в списке устройств AVD Manager;
  7. Запустите виртуальное устройство. Для этого нажмите ;
  8. Через некоторое время на экране появится силуэт устройства, затем устройство загрузится и будет готово к работе;
  9. Если вы сразу собираетесь запускать или отлаживать мобильное приложение — не выключайте и не закрывайте виртуальное устройство, оставьте его запущенным.

Запустить отладку мобильного клиента

  1. Запустите отладку конфигурации как мобильного клиента (Отладить как > 3 Мобильный клиент 1С:Предприятия на Android OS в контекстном меню в корне проекта);
  2. Если это первый запуск, 1C:EDT откроет редактор конфигурации запуска. Убедитесь, что в поле Устройство выбрано нужное вам устройство (виртуальное или смартфон);
    1. Предварительно виртуальное устройство должно быть запущено, а смартфон — подключен по USB. В противном случае вы не сможете выбрать его в этом диалоге.
    2. Нажмите Отладка;
  3. Если у проекта ещё нет приложения, 1C:EDT предложит создать новое приложение. Создайте приложение на файловой базе;
  4. Если приложение еще не опубликовано на веб-сервере, 1C:EDT предложит опубликовать его;
    1. Задайте имя публикации, выберите каталог, в котором будет располагаться публикация и убедитесь, что в конфигурации запуска включена отладка;
    2. Нажмите Далее;
    3. Установите флажок Использовать в качестве провайдера OpenID и нажмите Готово;
    4. 1C:EDT внесет изменения в публикацию базы на веб-сервере и остановится в ожидании ваших действий. Вам нужно будет вручную перезапустить веб-сервер и после этого нажать ОК в этом диалоге;
    5. Если вместо сообщения Требуется рестарт ... этом месте вы получили ошибку подобного вида, это говорит о том, что вам нужно перезапустить 1C:EDT с правами администратора;
  5. Если это первый запуск на данном виртуальном устройстве или смартфоне, 1C:EDT установит на него платформу разработчика мобильного клиента. После этого операционная система запросит разрешения для нее. Нажмите Перейти в настройки и разрешите доступ к управлению файлами;
    1. После этого будет установлен и запущен ваш мобильный клиент;
    2. Теперь вы можете выполнить в приложении необходимые действия и отладить его;
    3. Чтобы завершить отладку, завершите работу приложения на виртуальном устройстве или на смартфоне, а затем завершите процесс отладки в 1C:EDT в перспективе Отладка.
    4. В дальнейшем можно запускать приложение вручную, а также добавлять новые мобильные клиенты и изменять их свойства.