gifts2017

Android "Emulator" Genymotion + 1C

Опубликовал Анаит Бадалян (LaNaite) в раздел Программирование - Мобильные приложения

Genymotion - быстрый "эмулятор" Андроид, который я эксплуатирую для тестирования приложений, разработанных, в частности, на 1С.

Что понадобится:

  1. Архив zip с мобильной платформой 1С:Предприятие;
  2. Android SDK;
  3. Настроенный веб-сервер Apache или IIS (по желанию, т.к. в статье рассматривается пример с локальным веб-сервером IIS);
  4. Конфигурация с мобильным приложением для тестирования.

Инсталляция Genymotion (GM).

Genymotion поставляется в двух вариантах «Free» (для частного, некоммерческого использования) и «Business». Бесплатной версии вполне достаточно для функционала мобильной платформы 1С. Но чтобы загрузить дистрибутив с сайта https://www.genymotion.com/#!/download надо пройти регистрацию. Аутентификация является обязательным условием для загрузки и дальнейшей эксплуатации программы.

  1. GM работает в связке с менеджером Oracle VM VirtualBox. Под каждый новый девайс GM создает и запускает виртуальную машину. В первую очередь это сказывается на скорости его работы. Разница заметна, например, в сравнении с эмулятором в составе SDK. Поэтому, если VirtualBox ранее не был установлен, то скачиваем полный дистрибутив размером в 126.07 Мб.
  2. Выполните стандартную установку GM.
  3. После первого запуска появится предложение по добавлению нового устройства, нажимаем «No» и заходим в настройки программы «Settings».


    На вкладке «Account» заполняем регистрационные данные и ставим отметку «Remember my credentials».

    На вкладке «ADB» указываем путь к папке с Android SDK.
     
  4. Теперь добавим образ для нового устройства. Нажимаем на кнопку «Add» и выбираем подходящий вариант из списка доступных девайсов. Нажимаем «Next» и дожидаемся «развертывания» виртуальной копии.
    Важно! Если Вы хотите добавить устройство, поддерживающее, к примеру, API 19, то необходимо убедиться, чтобы в SDK manager’е была установлена соответствующая платформа. 
     
  5. По завершении операции, новое устройство отобразится в списке главного окна GM. По пиктограмме с гаечным ключом можно внести свои коррективы в конфигурацию устройства. Я изменила количество процессов и объем оперативной памяти, чтобы приблизить образ к характеристикам корпоративных телефонов. И последнее, установим галочку «Show Android navigation bar», а «Use virtual keyboard for text input» - уберем, т.к. ввод текста будет доступен напрямую с клавиатуры. "Ок".
    Готово!
     

Настройка 1С (8.3.5 и выше).

  1. Запускаем 1С с конфигурацией мобильного приложения в режиме «Конфигуратор».
  2. В главном меню «Сервис» переходим в раздел «Параметры». На вкладке «Запуск 1С:Предприятие» открываем страницу «Мобильное приложение».
    - Ставим галочку «Использовать “Android Debug Bridge” Для запуска мобильного приложения»;
    - Указываем каталог с Android SDK (латиницей);
    - Указываем каталог с zip-архивом мобильной платформы (латиницей);
    - В группе «При отсутствии доступных устройств» выбираем вариант «Ожидать подключения» (*) и сохраняем настройки - «Ок».
     

Установка и обновление мобильного решения из конфигуратора 1С.

  1. Возвращаемся в окно GM и запускаем устройство по кнопке «Start» (первый запуск выполняется дольше последующих).
    Примечание! Для настройки языка в ОС Андроид, нужно из области приложений запустить «Settings» - найти раздел «Personal» - выбрать «Language & input» - и для параметра «Language» установить значение «Русский».
     
  2. Далее, устанавливаем мобильную платформу 1С на устройство. В конфигураторе в главном меню «Конфигурация» выбираем «Мобильное приложение»- «Использование Android Debug Bridge» - «Установить мобильную платформу». В результате, в меню эмулятора появится ярлык для запуска 1С:Предприятие.

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

     

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

Важно! Отладчик 1С не выполняет запуск виртуального устройства Genymotion. Перед тестированием, убедитесь в том, что в конфигураторе выполнена настройка п. 2(*) и устройство активно.

Установка и обновление мобильного решения с мобильного устройства.

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

     
  2. Переходим к этапу развертывания мобильного приложения в эмуляторе на основании опубликованного шаблона. Открываем zip-архив с мобильной платформой, в папке «Android» находим apk файл для платформы x86 и просто перетаскиваем его в окно виртуального устройства. 
     
  3. После завершения установки, запустим ярылк 1С:Предприятие. Откроется пустой список приложений. Нажимаем на «Добавить приложение».
    Для подключения к веб-серверу персонального компьютера с виртуального мобильного устройства необходимо использовать предопределенный внешний ip-адрес 10.0.3.2 (имя localhost и стандартный ip-адрес 127.0.01 не подойдут). Поэтому в поле интернет адреса публикации пишем http://10.0.3.2/auditMA/1cema.xml и нажимаем «Загрузить».
      

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

 

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

p.s. Подробный user-guide здесь https://www.genymotion.com/#!/developers/user-guide

 

 

 

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Сергей Куликов (ksvd) 21.08.15 08:48
Вообще-то после первого запуска Genymotion нужно не создавать образ, а в Settings - ADB - указать путь к SDK.
А потом создавать образ
2. Дмитрий Шерстобитов (DitriX) 21.08.15 09:05
(1) тогда можно и без веб сервера.
3. Анаит Бадалян (LaNaite) 21.08.15 17:20
(1) ksvd, в моем варианте это необязательно, т.к. я обновлялась не из конфигуратора.

(1) и (2) Спасибо за комментарии! Дополнила статью)
4. Евгений Анчутин (eXs) 26.08.15 09:26
Таким образом, обновление и отладку мобильного решения можно выполнять напрямую из конфигуратора.

Извините, как выполняете отладку?
5. Анаит Бадалян (LaNaite) 26.08.15 16:28
(4) eXs, Мобильная платформа не поддерживает пошаговую отладку, обхожусь ссылками на строку с ошибкой и методом "Сообщить". Если интересно, еще я использую DDMS (из SDK), но это не по теме, т.к. проблему с кодом решить не позволяет. И там есть доступ к файловой системе приложения и статистике сетевых запросов.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа