Как изменить цвета и оформить мобильное приложение 1С в корпоративном стиле

Программист IT и автоматизация бизнеса
← На главную

Долгое время разработчики мобильных решений на платформе 1С сталкивались с жестким ограничением: интерфейс приложения был неразрывно связан со стандартной желтой цветовой гаммой 1С. Это создавало сложности при выполнении требований заказчиков по соблюдению корпоративного стиля (Brand Book). Однако с развитием платформы ситуация существенно изменилась. В этой статье мы разберем, как легально и технически грамотно изменить оформление вашего мобильного приложения, начиная от цветов панелей и заканчивая заставкой при запуске.

Использование встроенных стилей в современных версиях платформы

Начиная с версии платформы 8.3.17.87 и выше, фирма 1С официально разрешила и реализовала механизм изменения цветов через обычные стили конфигурации. Рассмотрим, как это работает на практике. Ранее многие свойства оформления были доступны только для настольных приложений, но теперь мобильная платформа полноценно их поддерживает.

Проанализируем основные шаги для смены цветовой гаммы:

  1. Перейдем в дерево конфигурации и создадим новый объект Стиль.
  2. В свойствах стиля мы можем переопределить стандартные значения. Для мобильного приложения критически важными являются элементы:
    • ЦветФонаОкна — часто влияет на общую подложку.
    • ЦветРамки — в некоторых версиях мобильной платформы именно этот параметр отвечает за цвет верхней навигационной панели (Header).
    • ЦветЗаголовкаТаблицы — позволяет выделить списки в мобильном интерфейсе.
  3. Назначим созданный стиль в свойстве конфигурации Основной стиль.

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

Кастомизация заставки (Splash Screen) через графические ресурсы

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

Разберем алгоритм замены заставки через Архив графических материалов:

В «Сборщике мобильных приложений» предусмотрены специальные поля для загрузки ресурсов. Нам необходимо подготовить набор изображений в формате PNG для различных разрешений экранов (ldpi, mdpi, hdpi, xhdpi и т.д.).

  1. Создадим структуру папок, соответствующую требованиям Android или iOS.
  2. Упакуем эти изображения в ZIP-архив.
  3. В карточке сборки в поле Графические ресурсы выберем наш подготовленный архив.

При сборке приложения пакет mobile.zip будет дополнен вашими материалами, и стандартные картинки заставки будут заменены на ваши корпоративные. Это позволяет сделать приложение визуально уникальным еще на этапе его инициализации в памяти устройства.

Полная кастомизация интерфейса с помощью HTML и CSS

Если стандартных возможностей стилей 1С недостаточно (например, требуется сложная градиентная заливка, нестандартные шрифты или анимация), проанализируем вариант использования Поля HTML-документа. Это самый гибкий, хотя и более трудоемкий способ.

Вы можете спроектировать форму 1С, которая будет состоять практически из одного элемента — HTML-поля. Внутри него можно использовать всю мощь CSS3 для оформления:


// Пример формирования HTML-строки для кастомной кнопки
ТекстHTML = "<html><body style='background-color: #f0f0f0;'>"
          + "<div style='padding: 20px; background: linear-gradient(to bottom, #333, #000); color: white; border-radius: 10px; text-align: center;'>"
          + "Нажми меня"
          + "</div></body></html>";
Элементы.ПолеHTML.УстановитьТекст(ТекстHTML);

Этот метод позволяет полностью уйти от «желтизны» и создать интерфейс, который визуально ничем не будет отличаться от нативных приложений, написанных на Java, Kotlin или Swift.

Решение проблемы с нехваткой оперативной памяти при сборке

Часто при кастомизации и сборке современных версий мобильной платформы (начиная с 8.3.15) разработчики сталкиваются с технической ошибкой: «Недостаточно оперативной памяти для сборки». Платформа проверяет наличие свободного объема RAM и может блокировать процесс, если у вас менее 8 ГБ.

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


// В процедуре BuildApplication модуля MobileApplicationBuilding
// Найдем строку с проверкой SysInfo.RAM
Если SysInfo.RAM < 8190 Тогда // Было ограничение 8Гб
    // Можно изменить на меньшее значение, например:
    Если SysInfo.RAM < 4000 Тогда 
        // Вывод сообщения об ошибке
    КонецЕсли;
КонецЕсли;

Важный момент: Современные средства сборки (Gradle, Android SDK) действительно потребляют много ресурсов, поэтому рекомендуется все же иметь 16 ГБ оперативной памяти для стабильной работы.

Безопасность и лицензионные аспекты

Необходимо помнить, что глубокое вмешательство в ресурсы платформы (реверс-инжиниринг APK-файла через APK Manager) может нарушать лицензионное соглашение. Поэтому всегда старайтесь использовать официальные методы:

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

← На главную