К статье
Практический материал

Разработка и Конфигурация · 11 мин

Как создать мобильное приложение 1С для Android

Как создать мобильное приложение 1С для Android: выбор платформы, настройка мобильного клиента, сборка APK, публикация и типичные ошибки разработчика.

Мобильное приложение на базе 1С для Android создаётся по одному из трёх путей: через мобильную платформу 1С (сборка собственного APK), через готовый мобильный клиент, который подключается к опубликованной базе, или через веб-клиент в браузере. Выбор зависит от того, нужна ли автономная работа офлайн, доступ к камере и сканеру штрихкодов, push-уведомления и распространение через Google Play или внутри компании.

Для большинства прикладных задач — мобильная торговля, складской учёт, обходы, согласование документов — подходит мобильная платформа 1С: она позволяет написать конфигурацию в привычной среде «Конфигуратор», собрать её в установочный пакет Android и установить на устройства сотрудников. Ниже разобран полный цикл: от подготовки инструментов до установки APK и типичных ошибок.

Важно понимать ограничения: мобильная платформа поддерживает не весь функционал «большой» 1С, объяснение с сервером требует публикации базы на веб-сервере, а для распространения приложения вне Google Play потребуется включить установку из неизвестных источников на устройствах.

Выберите подходящий способ создания приложения

Прежде чем начинать разработку, определите, какой вариант архитектуры решает вашу задачу. Собственная мобильная конфигурация на мобильной платформе подходит, когда нужна автономная работа без интернета: торговый представитель оформляет заказ в подвале магазина, а данные синхронизируются позже. Мобильный клиент — это тонкий клиент для Android, который работает только онлайн, зато не требует отдельной разработки: используется уже существующая конфигурация.

Третий вариант — веб-клиент через браузер Android — подходит для эпизодического доступа и не требует установки, но не даёт доступа к камере, сканеру и push-уведомлениям в полной мере. Наконец, для узких задач (например, только сканирование штрихкодов) иногда проще использовать готовые отраслевые приложения, интегрированные с 1С, чем писать своё.

Сравнение вариантов

Мобильная платформа 1С (свой APK)

Автономная работа офлайн, доступ к камере и сканеру, push-уведомления. Требует разработки отдельной конфигурации и сборки приложения.

Мобильный клиент 1С

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

Веб-клиент в браузере

Ничего не нужно устанавливать. Нет полноценного доступа к оборудованию устройства и офлайн-режима.

Подготовьте инструменты разработчика

Для сборки собственного приложения понадобится комплект разработчика мобильной платформы 1С. Он включает саму мобильную платформу, сборщик мобильных приложений и документацию. Дополнительно на компьютер устанавливаются Android SDK (инструменты платформы Android), Java Development Kit подходящей версии и при необходимости Android Studio для настройки SDK и эмулятора.

Проверьте совместимость версий: сборщик мобильных приложений предъявляет требования к версиям JDK, Android SDK и целевой версии Android. Несоответствие версий — самая частая причина, из-за которой сборка завершается ошибкой ещё до начала компиляции конфигурации. Точные требования указаны в документации к конкретной версии мобильной платформы — сверяйтесь с ней, а не с памятью.

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

Разработайте мобильную конфигурацию

Мобильная конфигурация создаётся в обычном Конфигураторе, но с учётом ограничений мобильной платформы. Начните с минимального состава объектов: справочники (номенклатура, контрагенты), документы (заказ, акт, перемещение), регистры для остатков и оборотов, план обмена для синхронизации с основной базой. Не переносите всю «большую» конфигурацию — мобильное приложение должно решать узкий круг задач и работать быстро на слабом устройстве.

Учитывайте особенности мобильного интерфейса: экраны маленькие, ввод с клавиатуры неудобен, поэтому формы должны быть простыми, с крупными элементами и минимумом полей. Используйте средства мобильной платформы: сканирование штрихкодов через камеру, геопозиционирование, телефонные вызовы и SMS, локальные и push-уведомления, мультимедиа.

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

Соберите APK-файл

Когда конфигурация готова и протестирована на разработческом устройстве, переходите к сборке установочного пакета. Общий порядок таков: конфигурация выгружается в файл, затем сборщик мобильных приложений упаковывает её вместе с мобильной платформой в APK, после чего пакет подписывается ключом разработчика.

Подпись обязательна: Android не установит неподписанный пакет. Для внутреннего распространения достаточно самоподписанного ключа, созданного через keytool из JDK; для публикации в Google Play ключ нужно хранить особенно бережно — потеря ключа означает невозможность обновлять опубликованное приложение.

Порядок сборки приложения
  1. 1
    Установите JDK, Android SDK и сборщик мобильных приложений, проверьте совместимость версий
  2. 2
    Выгрузите мобильную конфигурацию из Конфигуратора в файл
  3. 3
    Запустите сборщик, укажите пути к SDK, конфигурации и параметры приложения (имя пакета, версия, иконка)
  4. 4
    Создайте ключ подписи через keytool или используйте существующий
  5. 5
    Соберите APK и подпишите его ключом
  6. 6
    Установите APK на тестовое устройство и проверьте запуск, обмен данными и работу оборудования
bash
keytool -genkey -v -keystore my1capp.keystore -alias myapp -keyalg RSA -keysize 2048 -validity 10000

Настройте обмен данными с основной базой

Автономное приложение без синхронизации полезно редко, поэтому следующий шаг — публикация сервисов обмена. Основная база публикуется на веб-сервере (Apache или IIS), для неё настраиваются HTTP-сервисы или стандартный механизм обмена мобильного приложения. В настройках приложения на устройстве указывается адрес публикации, логин и пароль пользователя обмена.

Обязательно используйте защищённое соединение HTTPS, особенно если база доступна из интернета. Открытый HTTP-обмен с логином и паролем — прямой путь к утечке данных. Ограничьте права пользователя, под которым работает обмен: ему нужны только те объекты, которые реально участвуют в синхронизации.

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

Установите и распространите приложение

Для установки APK внутри компании файл передаётся на устройство любым удобным способом: по USB, через корпоративную почту, файловое хранилище или MDM-систему. На устройстве потребуется разрешить установку приложений из неизвестных источников — это делается в настройках безопасности Android, причём в новых версиях разрешение выдаётся конкретному приложению-источнику (например, файловому менеджеру).

Если приложение предназначено для внешних пользователей или широкого круга сотрудников, рассмотрите публикацию в Google Play. Для этого нужна учётная запись разработчика Google, подготовленные скриншоты и описание, а пакет загружается в формате AAB. Учтите, что модерация занимает время, а каждое обновление проходит проверку заново.

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

Типичные ошибки
01
Перенос всей функциональности основной конфигурации в мобильную — приложение становится медленным и неудобным на маленьком экране
02
Несовместимые версии JDK и Android SDK — сборка падает с непонятной ошибкой ещё до начала работы
03
Потеря ключа подписи — невозможно обновить уже установленное или опубликованное приложение
04
Обмен по HTTP без шифрования — логины, пароли и данные базы передаются открытым текстом
05
Отсутствие правил разрешения конфликтов — при одновременном изменении данных на устройстве и в офисе информация теряется или дублируется
06
Тестирование только на эмуляторе — ошибки работы камеры, сканера и геолокации обнаруживаются уже у пользователей

Проверьте результат и типичные проблемы

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

Контрольные точки

Как проверить результат

Запуск приложения
Норма

Приложение открывается за несколько секунд, показывает главный экран

Тревожный признак

Долгая загрузка, вылет при старте, чёрный экран

Синхронизация
Норма

Документ с устройства появляется в основной базе без дублей

Тревожный признак

Документы теряются, дублируются или приходят с ошибками

Работа офлайн
Норма

Без интернета можно создать документ, он уйдёт при появлении связи

Тревожный признак

Приложение требует сеть там, где она не нужна по логике задачи

Сканер штрихкодов
Норма

Камера открывается, код распознаётся и подставляется в поле

Тревожный признак

Камера не запускается или код не распознаётся на реальном устройстве

Если приложение вылетает при запуске, первым делом смотрите логи устройства через Android Debug Bridge (команда adb logcat) — там видно реальную причину: нехватку разрешений, ошибку инициализации базы или несовместимость версии платформы. Догадываться о причине по внешним признакам почти всегда дольше, чем прочитать лог.

Часто задаваемые вопросы

Можно ли сделать мобильное приложение 1С без программирования?

Частично да: мобильный клиент 1С позволяет работать с существующей конфигурацией без разработки — достаточно опубликовать базу и установить приложение-клиент на устройство. Но полноценное автономное приложение с офлайн-режимом и своим интерфейсом без разработки мобильной конфигурации не создать.

Нужна ли отдельная лицензия для мобильной платформы 1С?

Лицензионная политика зависит от способа использования: мобильный клиент при подключении к серверу расходует серверные и клиентские лицензии по общим правилам, а автономные мобильные приложения имеют свои условия лицензирования. Точные условия уточняйте в лицензионном соглашении вашей версии платформы или у партнёра 1С.

Какая версия Android нужна для мобильного приложения 1С?

Минимальная поддерживаемая версия Android зависит от версии мобильной платформы и указана в её документации. На практике стоит ориентироваться на устройства с относительно свежими версиями системы: старые устройства могут не поддерживаться сборщиком или работать нестабильно.

Можно ли опубликовать приложение 1С в Google Play?

Да. Потребуется учётная запись разработчика Google, подписанный пакет в формате AAB, иконки, скриншоты и описание. Приложение проходит модерацию Google, поэтому на публикацию и каждое обновление закладывайте время на проверку.

Что делать, если сборка APK завершается ошибкой?

Сначала проверьте соответствие версий JDK, Android SDK и сборщика требованиям документации — это самая частая причина. Затем изучите текст ошибки в журнале сборщика: он обычно указывает, какой компонент не найден или какой путь задан неверно. Также убедитесь, что пути к SDK и проекту не содержат кириллицы и пробелов.

Как обновлять приложение у сотрудников без Google Play?

Новая версия APK распространяется тем же способом, что и первая: через файловое хранилище, почту или MDM-систему, и устанавливается поверх старой. Ключ подписи должен быть тем же, иначе Android откажется обновлять приложение и потребует удалить старую версию вместе с данными.

Итог

Что важно запомнить

Мобильное приложение 1С для Android строится на мобильной платформе: разработка конфигурации в Конфигураторе, сборка APK через сборщик, подпись ключом и установка на устройства. Критичны совместимость версий инструментов, сохранность ключа подписи, защищённый канал обмена данными и тестирование на реальном устройстве.