Дисклеймер: Не являюсь мобильным разработчиком. Первый опыт настройки окружения, который решил собрать в статью, дабы упростить жизнь другим.
Итак, как уже написано в анонсе - появилась задача настроить рабочее место для мобильной разработки. И я конечно, решил посмотреть рекомендации Вендора. Большая часть будет аналогична первым трем видео в соответствующем плейлисте с Никитой Вельмаскиным: Плейлист
Пишу это больше для себя, и чтобы структурировать информацию в голове.
Итак, начнем...
Скачаем необходимые инструменты.
1. Платформа 1С - Т.к. версия для разработчиков у меня установлена на основной ПК, а рабочее место будем разворачивать на ноутбуке, я использую учебную версию платформы. Конечно, качаем самую последнюю доступную версию. В моем случае - это 8.3.20.1789
Учить скачивать платформу я не буду - гуглим "1С версия для обучения программированию" переходим на официальный сайт, вводим свои данные и качаем.
2. Мобильная платформа - скачиваем аналогично, я использовал версию 8.3.21.26
(конечно, если у Вас есть доступ к официальному сайту с релизами, проще все скачать оттуда, но мы опишем способ доступный всем)
3. Понадобится Java. Автор плейлиста рекомендует скачать java-машину с https://www.java.com/ru/download/ и JDK от oracle. Я использовал у себя Liberica 11 Full JDK с официального сайта, т.к. в перспективе на этом ноуте планирую работать в EDT.
4. Так же, нам понадобится Веб-сервер Apache: https://www.apachelounge.com/download/ Важно, если Вы ставите учебную версию, качайте 32-х разрядную версию сервера. Разрядность платформы и Apache должны совпадать.
5. Для отладки и запуска эмулятора, нам понадобится Android Studio. Ее качаем отсюда: http://developer.android.com/. Я брал 64 разрядную версию. Вроде, подружились с 32х разрядной платформой, без проблем.
После того, как скачали софт, его надо установить и настроить.
Установка и настройка
1. Начнем с 1С, тут все просто:
Распаковали архив, находим setup.exe, ставим в стиле "Далее-Далее-Далее-Готово".
2. Мобильная платформа - с ней ничего делать не надо. На всякий случай, положите архив так, чтобы путь к нему состоял только их латинских символов, например C:\tools\mobile_8_3_21_26
3. Java - ставим стандартно, при установке отмечаем, чтобы путь был добавлен в PATH и JAVA_HOME
Если такого пункта не будет (не смотрел другие дистрибутивы JDK) - не страшно, потом можно прописать вручную:
После установки переходим в переменные среды (в Windows 11 можно просто в поиске прописать "пере" и вы уже увидите необходимый инструмент) в открывшемся окошке жмем соответствующую кнопку:
И тут проверяем те самые переменные, должно быть примерно так, в Path путь к папке bin, в JAVA_HOME - путь к каталогу инсталляции:
4. Далее у нас Apache. Еще раз отмечу, убедитесь, что разрядность совпадает с разрядностью платформы.
Открываем скачанный архив и копируем папку Apache24 в корень диска С.
Далее, нам надо его установить. Найдите командную строку. Самый простой способ - в поиске пишем "cmd" и запускаем от имени администратора.
Далее вводим команды:
cd C:\Apache24\bin
httpd -k install
Результат должен быть примерно такой:
Проверяем, что Апач появился в службах:
Далее, можем запустить его из службы, либо, идем все в ту же C:\Apache24\bin и находим в ней ApacheMonitor.exe, запускаем.
Он запускается в трее, и оттуда мы сможем запускать, останавливать или перезапускать сервер, просто щелкнув по значку мышкой
Запустите апач. Проверьте, что он работает: Откройте браузер и пропишите в строке адреса "localhost". Должна открыться такая страница:
5. Android Studio - Все что касается установки - довольно тривиально, опять же, "Далее-Далее-Далее-Готово". Затем, запускаем студию, и настраиваем ее (там все довольно очевидно и может отличаться от разных версий студии). Автор видео говорит, что важно иметь хороший интернет канал для настройки, но честно говоря, на себе не ощутил.
По окончании первичной настройки, открывается окно, в котором нам надо перейти в SDK Manager. В моей версии он находится немного в другом месте, не так, как на видео:
Относительно устанавливаемых компонентов - тут я не силен, сверьтесь с видео, лучше. Я проставил так:
и вот так:
Важно затем дождаться полной установки компонентов.
Заставляем все это работать вместе.
Создаем пустую базу в 1С. Я добавил общую форму, которую вывел на начальную страницу.
Теперь, опубликуем нашу базу на веб-сервере. Для этого, идем в Администрирование -> Публикация на веб-сервере
В открывшемся окне, нам нужно заполнить Имя и Каталог публикации:
Используйте латинские буквы для имени и для пути к публикации.
Далее, нажимаем "Опубликовать", 1С выполнит публикацию и предложит перезапустить сервер - соглашаемся.
Пробуем открыть нашу базу в веб-клиенте - открываем браузер и в строке адреса вписываем "http://localhost/test/ru_RU/" (здесь "test" замените на то имя базы, которое установили у себя. Если все сделано верно, должно открыться окно базы:
Может случиться так, что с начала выдаст ошибку 404. В этом случае, попробуйте рестартовать апач, при помощи монитора, обновить страницу. Например, у меня конкретно эта публикация появилась только после второго рестарта апач.
Если все заработало - Можете смело назвать себя разработчиком веб-приложения :)
Но наша цель - мобильное приложение. По этому, подготовим Android. Как запустить отладку на физическом устройстве - есть в видео, по этому ее пропустим. Моя цель - отладка в эмуляторе. Открываем меню Virtual Device Manager
Здесь, нам надо создать эмулятор устройства, на котором будем проверять - жмем на единственную кнопку "Create device".
Выбираем любое устройство, которое нравится. Например, я использую Pixel 4 (на сколько я понимаю, тут в основном все сводится к объему памяти и размеру экрана)
Нажимаем Next и выбираем версию Android
Next и задаем имя и положение экрана, жмем Finish. Я оставляю по умолчанию. Запускаем устройство
Ждем, пока прогрузится Android. И после можем "пощупать" свой новенький телефон, к сожалению, виртуальный. Первый, неочевидный для меня, момент с которым столкнулся в эмуляторе - как открыть список приложений. Как оказалось, надо потянуть вверх за область экрана чуть выше строки поиска гугл (примерно где курсор на скриншоте)
Теперь вернемся к 1С.
Настроим платформу. Переходим в Сервис -> Параметры
В открывшемся окне переходим на закладку "Запуск 1С:Предприятия", в ней на "Мобильное приложение". Заполняем Каталог Android SDK - указываем путь C:\Users\anton\AppData\Local\Android\Sdk - вместо "anton" - укажите имя вашего пользователя Windows. Указываем путь к каталогу, где лежит дистрибутив мобильной платформы - у меня это рабочий стол, у Вас может быть другая папка, но желательно, чтобы в пути были указаны латинские символы.
Теперь настроим отладку, т.к. на мобильном устройстве она может работать только по протоколу HTTP. Переходим на закладку Отладка, и меняем Протокол отладки на HTTP, так же, вписываем Адрес локальной сетевой карты (по сути, просто IP своего компьютера) Один из самых простых способов узнать свой IP вписать в командную строку "ipconfig"
Видим, что мой IP в текущей сети - 192.168.0.9, значит использую его
Далее, нам надо опубликовать наше приложение, для этого переходим в Конфигурация -> Публикация -> Публиковать
Отвечаем на вопрос 1С "Да"
Публикация похожа на публикацию на веб-сервере. Нам тоже надо прописать имя и каталог публикации. Тоже, используем латинские буквы
Нажимаем Опубликовать. Обновляем публикацию и мобильное приложение (просто отвечаем на вопросы 1С "Да")
Для быстрого запуска мобильной отладки - рекомендую добавить соответствующую кнопку в панель:
И вот он, долгожданный "час Х" запускаем отладку, щелчком по только что добавленной кнопке. 1С находит наш эмулятор, видит что 1С на нем не установлена и предлагает установить. Соглашаемся.
1С говорит, что все сделала, но эффекта нет, на эмуляторе пустой экран...
И вот тут начинается не очевидное. Мы переходим к приложениям и открываем 1С
1С в мобильном спросит разрешить ли доступ к медиа-данным, говорим "разрешить" (Allow)
Но при запуске возникает ошибка доступа к файлу
И с этой ошибкой я провозился (первый раз) часа 3 в общей сложности.. Пробовал разные версии платформы, разные версии мобильной платформы, разные версии Android, пытался настраивать права приложения.. Все без толку. и ту хочу поблагодарить Дмитрия Добрынина из телеграмм-канала https://t.me/Mobile_1C который подсказал, что не так.
Итак, что делаем: Открываем список приложений, делаем долгое нажатие по иконке приложения и открываем App Info
Далее идем в Permissions (разрешения)
Что тут видим: по умолчанию, т.к. мы дали разрешение использовать фото и медиа данные, раздел Files and media находится в списке Allowed, и мне за те 3 часа страданий даже в голову не пришло перепроверить его (ну ведь разрешено же).
Однако, если мы перейдем в этот разрешение, увидим, что доступ предоставился только к медиа данным, а к файлам - нет. Устанавливаем переключатель в верхнее положение "Allow managment of all files"
Выходим из настроек, запускаем 1С в эмуляторе, ошибки больше нет.
Теперь снова в конфигураторе нажимаем запуск мобильной отладки (не закрывая 1С в эмуляторе)
Сейчас уже, платформа установлена, конфигуратор вопросов не задаст, а в окне эмулятора мы увидим заветное "Привет, мир!".
Ура! Наше приложение завелось на мобильном устройстве.
Осталось только реализовывать логику.
Надеюсь, эта статья поможет Вам сэкономить те часы и нервные клетки, которые потратил я :)