Разработка и Конфигурация · 10 мин
Как отладить мобильное приложение 1С
Практическое руководство по отладке мобильного приложения 1С: подключение отладчика, отладка по HTTP, работа с эмулятором и устройством, типичные ошибки и их решение.
Отладка мобильного приложения 1С заметно отличается от привычной отладки в конфигураторе: код выполняется на устройстве или эмуляторе, а конфигуратор работает на компьютере разработчика. Чтобы увидеть точки останова, значения переменных и стек вызовов, нужно правильно настроить связку «мобильная платформа — отладчик», выбрать протокол подключения и учесть ограничения мобильной среды.
Основной сценарий выглядит так: вы собираете отладочную версию мобильного приложения или используете мобильную платформу разработчика, запускаете на ней конфигурацию, а конфигуратор подключается к запущенному экземпляру по сети. Дальше отладка идёт почти как обычно: точки останова, пошаговое выполнение, просмотр значений. Сложности возникают на этапе подключения — из-за сетевых настроек, несовпадения версий платформы и особенностей Android и iOS.
Ниже разобран полный цикл: подготовка инструментов, настройка отладки по HTTP, работа с эмулятором и реальным устройством, типовые проблемы и способы проверить, что отладка действительно работает.
Какие инструменты понадобятся для отладки
Минимальный набор: конфигуратор 1С на компьютере разработчика, мобильная платформа 1С (устанавливается на устройство или эмулятор) и сама мобильная конфигурация. Для Android удобно использовать Android SDK с эмулятором (AVD), для проверки на реальном устройстве — смартфон или планшет, подключённый к той же сети, что и компьютер.
Важно, чтобы версия мобильной платформы на устройстве совпадала с версией платформы, под которой собрана конфигурация. Расхождение версий — одна из самых частых причин того, что отладчик не подключается или приложение ведёт себя непредсказуемо. Проверьте версию в настройках мобильного приложения и в свойствах конфигурации.
Для сборки собственного мобильного приложения (а не только отладки на платформе разработчика) потребуется сборщик мобильных приложений 1С, а для iOS — компьютер с macOS и Xcode. На этапе отладки логики чаще достаточно мобильной платформы разработчика, куда конфигурация загружается напрямую в виде XML-выгрузки.
Как включить режим отладки на мобильном устройстве
Откройте настройки мобильной платформы на устройстве и включите режим отладки. В параметрах отладки укажите протокол HTTP и адрес, по которому мобильная платформа будет принимать подключения отладчика. После включения платформа начинает работать как сервер отладки и ждёт подключения конфигуратора.
На эмуляторе Android убедитесь, что виртуальное устройство имеет сетевой доступ к компьютеру. Эмулятор обычно видит хост-машину через специальный адрес внутренней сети; при проблемах с прямым адресом используйте проброс портов через ADB. На реальном устройстве и компьютер, и смартфон должны находиться в одной Wi-Fi сети, без изоляции клиентов на роутере.
- 1Установите мобильную платформу разработчика на устройство или эмулятор
- 2Загрузите в неё конфигурацию (XML-выгрузку из конфигуратора)
- 3Откройте настройки приложения и включите режим отладки по HTTP
- 4Запомните или задайте адрес и порт сервера отладки
- 5Перезапустите приложение, чтобы настройки применились
Настройка подключения в конфигураторе
В конфигураторе откройте настройки отладки (меню «Отладка» → «Подключение» или параметры отладки) и укажите, что отладка выполняется по протоколу HTTP. Затем в списке предметов отладки добавьте подключение к мобильному приложению: укажите адрес и порт сервера отладки, который показывает мобильная платформа.
После подключения в окне «Подключение» появится активный предмет отладки с типом «Мобильное приложение». С этого момента точки останова, расставленные в коде общих модулей и модулей, доступных на мобильной платформе, начнут срабатывать при выполнении соответствующего кода на устройстве.
Если предмет отладки не появляется, проверьте три вещи: доступность адреса с компьютера (например, ping или telnet до порта), совпадение версий платформы и то, что мобильное приложение действительно запущено и находится в режиме отладки. Брандмауэр Windows и антивирусы также могут блокировать исходящие подключения к нестандартным портам.
Отладка на эмуляторе и на реальном устройстве
Эмулятор удобен для быстрой итерации: конфигурацию можно перезагрузить за секунды, а сеть между эмулятором и компьютером стабильна. Недостаток — на эмуляторе нельзя проверить работу камеры, сканера штрихкодов, GPS и другого оборудования, а производительность интерфейса отличается от реальной.
Реальное устройство обязательно для проверки интеграций с аппаратурой, push-уведомлений, фоновых режимов и поведения при нестабильной сети. Для отладки по Wi-Fi убедитесь, что роутер не изолирует клиентов (функция AP Isolation должна быть выключена). Альтернатива — отладка через USB с пробросом портов через ADB для Android.
Эмулятор или устройство
Быстрый цикл изменений, стабильная сеть. Не подходит для проверки камеры, сканера, GPS и реальной производительности.
Полная проверка оборудования и поведения. Требует общей сети без изоляции клиентов и устойчивого сигнала.
Надёжное соединение без зависимости от Wi-Fi. Требует включённой отладки по USB на устройстве и настройки проброса портов.
adb forward tcp:1550 tcp:1550Особенности отладки кода мобильной конфигурации
Учитывайте контекст выполнения: часть кода мобильной конфигурации исполняется только на клиенте, серверных вызовов в мобильном приложении с автономным режимом может не быть вовсе. Точки останова ставьте в модулях, которые реально компилируются для мобильной платформы, — проверьте свойства модулей (флажки «Мобильное приложение — клиент/сервер»).
Фоновые задания и обмен данными с основной базой отлаживаются отдельно: если обмен выполняется через веб-сервисы, серверную сторону придётся отлаживать в конфигураторе основной информационной базы, подключившись к её серверу отладки. Удобно держать открытыми два конфигуратора: один для мобильной части, второй для серверной.
Для диагностики без точек останова используйте журнал регистрации мобильного приложения и вывод сообщений. На Android дополнительно помогает просмотр системного журнала через adb logcat — там видны падения платформы и ошибки, которые не доходят до встроенного языка.
Если точка останова не срабатывает, чаще всего модуль не скомпилирован для мобильной платформы или код выполняется в другом контексте, чем ожидалось. Проверьте флажки использования модуля и добавьте временный вывод сообщения в начало процедуры — это быстрее, чем долгая настройка подключения.
Типичные проблемы и их решение
Проблема «отладчик не подключается» почти всегда сводится к сети или версиям. Проверьте, что устройство и компьютер в одной подсети, порт не занят другим приложением, а версия мобильной платформы совпадает с версией конфигуратора. После смены версии платформы пересоберите и перезагрузите конфигурацию на устройство.
Вторая частая ситуация — приложение падает при запуске до того, как отладчик успевает подключиться. В этом случае смотрите логи устройства (logcat для Android) и упрощайте запуск: отключите автозапуск обменов и фоновых задач, чтобы локализовать место падения.
Как проверить, что отладка работает
Самый быстрый тест: поставьте точку останова в обработчике нажатия любой кнопки формы, подключитесь к предмету отладки и нажмите кнопку на устройстве. Если выполнение остановилось и в конфигураторе видны значения локальных переменных — связка настроена правильно.
Дополнительно проверьте пошаговое выполнение (шаг с заходом, шаг через) и просмотр значений через табло. Если шаги работают, а значения отображаются корректно, можно переходить к отладке реальной задачи. Если точка срабатывает, но значения не читаются — чаще всего несовпадение версий платформы.
Как проверить результат
В списке подключений видно мобильное приложение
Список пуст или подключение сразу разрывается
Выполнение останавливается при действии на устройстве
Код выполняется, но отладчик молчит
Табло и локальные переменные показывают реальные данные
Значения недоступны или отображаются ошибки чтения
Что важно запомнить
Отладка мобильного приложения 1С строится на связке «мобильная платформа в режиме отладки по HTTP — конфигуратор как клиент отладки». Совпадение версий, общая сеть и правильные флажки модулей решают большинство проблем. Эмулятор удобен для логики, реальное устройство обязательно для оборудования и финальной проверки.
Частые вопросы
Можно ли отладить мобильное приложение 1С без конфигуратора?
Полноценная пошаговая отладка возможна только через конфигуратор. Без него доступны косвенные методы: вывод сообщений, запись в журнал регистрации мобильного приложения и анализ системных логов устройства (logcat для Android). Этого хватает для диагностики падений, но не для просмотра значений переменных.
Почему отладчик не видит мобильное приложение в списке подключений?
Чаще всего причина в сети: устройство и компьютер в разных подсетях, роутер изолирует клиентов Wi-Fi или брандмауэр блокирует порт отладки. Также проверьте совпадение версий платформы и то, что режим отладки на устройстве действительно включён и приложение перезапущено.
Можно ли отлаживать приложение на iPhone?
Да, мобильная платформа для iOS поддерживает отладку по HTTP по тому же принципу, что и Android. Ограничения касаются сборки: для установки собственного приложения на iOS потребуется macOS, Xcode и сертификаты разработчика Apple. Для отладки логики часто проще использовать Android-эмулятор, а iOS проверять на финальном этапе.
Как отладить обмен данными между мобильным приложением и основной базой?
Обмен обычно идёт через веб-сервисы или HTTP-сервисы основной базы. Отлаживайте две стороны раздельно: мобильную часть — через подключение к мобильной платформе, серверную — через отладку информационной базы, опубликовав сервисы на тестовом веб-сервере. Удобно работать в двух окнах конфигуратора одновременно.
Точка останова установлена, но не срабатывает. Что проверить?
Сначала убедитесь, что модуль скомпилирован для мобильной платформы (флажки в свойствах модуля). Затем проверьте, что на устройстве загружена актуальная версия конфигурации — после изменений её нужно перезагрузить. Наконец, убедитесь, что код действительно выполняется: добавьте временный вывод сообщения в начало процедуры.
Опасно ли оставлять режим отладки включённым?
Да, если устройство доступно из недоверенной сети. Порт отладки позволяет подключиться к приложению и получить доступ к данным базы. Включайте отладку только на время работы, в изолированной сети и на тестовых данных, а после завершения отключайте режим в настройках приложения.