Как запустить мобильный клиент 1С собственной конфигурации на iOS: подробное руководство

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Запуск собственного мобильного клиента 1С на устройствах Apple — задача, требующая не только знаний платформы 1С, но и понимания специфики экосистемы Apple: от версий macOS до нюансов работы с Xcode. В отличие от разработки автономного мобильного приложения, создание мобильного клиента подразумевает работу в связке с опубликованной на веб-сервере базой. Рассмотрим подробно, как пройти этот путь, избежать типичных ошибок с сертификатами и настроить рабочую среду даже при отсутствии современного компьютера Mac.

Различие между мобильным приложением и мобильным клиентом

Перед началом работы разберем важный нюанс. Мобильное приложение — это полноценная база данных на смартфоне, которая может работать автономно и обмениваться данными с центральным узлом. Мобильный клиент — это, по сути, мобильный вариант «тонкого клиента», который работает напрямую с базой через интернет. Для его работы конфигурация должна быть опубликована на веб-сервере (Apache или IIS). Процесс сборки в Xcode для них схож, но в случае клиента нам критически важно правильно прописать URL веб-сервера в проекте prjios_client.

Подготовка инфраструктуры и выбор версии ПО

Одной из самых частых проблем является несовместимость версий. Разберем ситуацию: если мы используем старое оборудование (например, iMac прошлых поколений), оно может не поддерживать последнюю версию macOS, а старая macOS не позволит установить актуальный Xcode. В свою очередь, Apple жестко ограничивает минимальную версию iOS SDK для сборки приложений.

Проанализируем основные требования:

  1. macOS: Рекомендуется использовать актуальную версию (на данный момент Sonoma или Ventura). Если ваше железо не позволяет обновиться, лучшим выходом станет использование виртуальной машины.
  2. Xcode: Версия Xcode должна соответствовать версии iOS на вашем iPad или iPhone. Например, Xcode 10.3 позволяет собирать приложения максимум для iOS 12.4. Если на вашем устройстве установлена iOS 16 или 17, вам потребуется Xcode 14 или 15 соответственно.
  3. Мобильная платформа 1С: Всегда скачивайте дистрибутив «Мобильная платформа 1С:Предприятие» с сайта техподдержки. Внутри архива вы найдете папку iOS, содержащую проект prjios_client.zip.

Использование виртуальной машины для сборки

Если у вас нет подходящего Mac, рассмотрим вариант с виртуализацией. Опыт разработчиков показывает, что VMware работает с USB-устройствами (iPhone/iPad) гораздо стабильнее, чем VirtualBox. Выясним причину: VirtualBox часто требует сложной настройки Extension Pack и активации драйверов в системных настройках macOS внутри виртуалки, что не всегда приводит к успеху.

При использовании VMware выполним следующие шаги:

  1. Установим macOS (например, версию Mojave 10.14.6 или выше).
  2. В настройках виртуальной машины для USB-контроллера выберем режим USB 3.1 (даже если физический порт USB 2.0).
  3. Установим VMware Tools для корректной работы графики и обмена файлами.
  4. Подключим iPhone к компьютеру и в меню VMware выберем Connect (Disconnect from host) для проброса устройства внутрь macOS.

Настройка проекта в Xcode и сборка

После того как проект prjios_client распакован и открыт в Xcode, необходимо внести изменения. Главная цель — привязать клиент к вашему веб-серверу. Проанализируем процесс настройки:

В проекте необходимо найти файлы конфигурации (обычно это XML-файлы настроек внутри ресурсов проекта) и указать URL публикации. Важно, чтобы на веб-сервере была установлена галочка «Публиковать мобильный клиент» при публикации информационной базы из конфигуратора 1С.

Пример программной проверки доступности сервера (если вы дорабатываете код под свои нужды):


// Пример проверки подключения к серверу в мобильном приложении
Процедура ПроверитьСвязьССервером()
    Попытка
        Соединение = Новый HTTPСоединение("ваш-сервер.ru", , , , , 5);
        Запрос = Новый HTTPЗапрос("/");
        Ответ = Соединение.Получить(Запрос);
        Если Ответ.КодСостояния = 200 Тогда
            Сообщить("Связь установлена успешно");
        КонецЕсли;
    Исключение
        Сообщить("Ошибка подключения: " + ОписаниеОшибки());
    КонецПопытки;
КонецПроцедуры

Решение проблемы "Symbol not found for architecture arm64"

Эта ошибка часто возникает из-за несоответствия архитектур библиотек 1С и настроек проекта Xcode. Разберем способы исправления:

  1. Перейдем в Build Settings проекта.
  2. Найдем параметр Enable Bitcode и установим его в значение No. Мобильная платформа 1С часто не поддерживает Bitcode, что и вызывает ошибки линковки.
  3. Проверим параметр Valid Architectures: для современных устройств там должно быть указано arm64.
  4. Убедимся, что версия платформы 1С (дистрибутива) не слишком стара для текущей версии Xcode.

Работа с бесплатным аккаунтом разработчика Apple

Многие задаются вопросом: можно ли собрать приложение без оплаты $99 в год? Да, это возможно, но с существенными ограничениями, которые мы сейчас рассмотрим:

Использование «Сборщика мобильных приложений»

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

  1. Загрузите дистрибутив мобильной платформы в справочник сборщика.
  2. Создайте запись о вашем мобильном клиенте, указав имя пакета (Bundle ID) и URL веб-сервера.
  3. Загрузите иконки и картинки заставки.
  4. Нажмите кнопку «Собрать проект для iOS». Сборщик подготовит готовую папку, которую останется только перенести на Mac и запустить компиляцию в Xcode. Это минимизирует риск ошибок в структуре проекта.

Финальные рекомендации по отладке

Посмотрим на ситуацию, когда проект собрался, но не подключается к базе. Выясним возможные причины:

Сборка под iOS — процесс трудоемкий, но при правильном подборе версий ПО и использовании VMware для проброса устройств, вы сможете успешно запустить мобильный клиент 1С и обеспечить мобильность ваших пользователей.

← На главную