МОБИЛЬНЫЙ СБОРЩИК 1С. СБОРКА 1С ПРИЛОЖЕНИЕ ПОД iOS ИЗ WINDOWS
Мой курс по разработке мобильного приложения для бизнеса с нуля до 100%
Настройка Mac OS для мобильного сборщика 1С.
В предыдущем уроке я показал, как собрать мобильное приложение 1С на Mac OS в XCode.
Теперь же я покажу, как настроить Mac OS и XCode, а потом и мобильный сборщик 1С, для получения итогового ipa файла прямо в Windows.
Лучше один раз увидеть, чем сто раз прочитать и поэтому полный видео урок в конце статьи. Все остальные, читают дальше.
Для использования мобильного сборщика 1С нам необходимо настроить XCode. Для этого заходим в его настройки.
На вкладке аккаунты добавляем необходимые учетные записи. Как это делается вы можете посмотреть в предыдущем уроке. Скачиваем профили.
Проверим что проблем с установленными в систему сертификатами нет. Колонка Status пустая.
На вкладке Location у нас указана версия XCode для командной строки.
Открываем приложение «Связка ключей» и перетаскиваем оба сертификата из вкладки «Вход» в «Система». Это очень важный шаг, не пропустите его.
Далее у каждого ключа сертификата, заходим в свойства.
И устанавливаем доступ для всех.
Чтобы мобильный сборщик 1С смог провести сборку, нам необходимо настроить удаленный доступ к нашему Mac по SSH. Для этого заходим в «Системные настройки» и далее «Сеть».
Выбираем активное соединение с нашей локальной сетью и запоминаем наш IP адрес.
Возвращаемся в настройки и переходим в «Общий доступ».
Переходим в мобильный сборщик 1С. Меню сервис — Настройка параметров сборщика.
Указываем что будем собирать приложение на компьютере Apple и заполняем настройки подключения.
И если все нормально, то выйдет окно с версией ОС на Mac.
Добавляем профиль провизии для нашего мобильного клиента. Скачать его можно в консоли разработчика. Как это сделать я показывал в предыдущем видео.
В мобильном сборщике 1С создаем Группу сборки. Указываем настройки и App ID, который вы создали в консоли разработчика.
На вкладке Конфигурация, указываем версию и конфигурацию источник.
Далее настраиваем параметры подключения к базе мобильного клиента.
И на последней вкладке параметры сборки. Добавим группу разработчиков.
Найти ее ID можно в консоли разработчика.
Вводим эти данные в мобильном сборщике 1С. Наименование указываем произвольное, способ распространения в моем случае — для разработки.
Указываем профиль провизии загруженный ранее.
Теперь заходим в нашу группу и создаем первую сборку. Здесь все заполнится автоматом, поэтому записываем и запускаем сборку.
По окончании сборки все три пункта должны быть зелеными.
Переходим к результатам сборки. Здесь вы можете скачать готовый IPA файл. Но я покажу еще, как закинуть приложение сразу на телефон или планшет из XCode.
Для этого получаю приложение для сборки на Xcode и скидываю его на Mac.
Открываю проект в XCode.
Подключаю устройство, в моем случае iPad. Указываю его и выбираю команду разработчика. Собираю и запускаю проект, нажав на треугольник в левом углу.
После сборки мобильного клиента 1С и запуска его на iPad я получил такую ошибку.
Чтобы ее исправить, я возвращаюсь в конфигуратор:
После этого сохраняю конфигурацию для мобильного клиент 1С в файл.
В мобильном сборщике 1С, обновляю конфигурацию.
Создаю новую сборку. И скидываю пакет опять на Mac.
Открываю опять в XCode и собираю повторно с загрузкой сразу на планшет.
После этого мобильный клиент 1С удачно запускается.
На этом все, а более подробное видео вы можете посмотреть ниже. Остались вопросы, пишите в комментариях.
Инструкция: как скомпилировать мобильное приложение
под директора с iOS
Все, что осталось сделать – “закинуть” приложение на телефон директора.
Но здесь начинаются проблемы – директора любят продукцию Apple. За что? Непонятно, но так уж повелось…
Но будем честными – мало у кого из 1С-ников пылится на столе MacBook. Вообще более 95 % 1С-ников работают на Windows, и это нормально.
Почему мы вообще рассматриваем эту тему?
Во-первых, этот процесс сборки под iOS особо не документирован, мало кто с этим экспериментировал всерьез
Во-вторых, есть ряд подводных камней, над которыми можно долго биться в одиночку
В-третьих, нужно признать, что 1С-ники не самые продвинутые пользователи Макинтошей.
Это “страшное” слово PuTTY
PuTTY – клиент, который позволяет подключаться к *nix системам. Он используется для подключения к Mac компьютеру и дальнейшей сетевой сборки.
В видео рассмотрим установку и настройку PuTTY.
Как подключиться к Mac удаленно?
Обычно 1С-ники не работают на Macintosh, и даже чтобы переключить раскладку клавиатуры, приходится “гуглить”.
Если же речь идет о настройке сетевых параметров или сертификатов, то начинается депрессия и “ласковые” фразы в адрес Тима Кука
В этом видео мы расскажем, как пройти по тернистому пути, и разберем нюансы подключения к Mac компьютеру по сети:
Компиляция мобильных приложений под iOS: ошибки и способы их решения
Мы покажем, как, не имея собственного Мака, сделать компиляцию под iOS – например, подключившись к компьютеру директора по сети.
Этот урок особенно актуален для тех, кто в первый раз видит Mac OS – мы рассмотрим все потенциальные ошибки, с которыми может столкнуться 1С-ник, и разберем способы их решения.
Полный курс по мобильной платформе 1С 8.3
Если Вы хотите не просто знать отдельные “фишки”, но и уметь разрабатывать полноценные мобильные приложения на 1С и интегрировать их со “стационарными” решениями – рекомендуем пройти полный курс.
Поддержка – 2 месяца. Объем курса – 13 учебных часов.
Не откладывайте свое обучение!
Комментарии / обсуждение (63):
macOS 10.15.5
xCode 11.5
1с сборщик 2.0.11.50
мобильная платформа 8.3.16.142
надо больше инфы, вы собираете тестовую сборку или под публикацию?
У вас в хкоде есть устройство? или вы эмулятор собираете?
я собираю через конфигурацию 1С: Сборщик мобильных приложений.
в xcode я ничего не настраиваю. В сборщике выбираю настройку Способ распространения = Для разработки.
вы по сети собираете? Попробуйте через архив
да я настроил подключение в Сборщике и через него пытаюсь собрать.
если сохранить в проект и потом открыть его на маке, то все собирается и никаких проблем нет. но меня интересует как решить проблему сборки по сети, чтобы не заниматься копированием.
ну тогда с этого и надо начинать
Но тут долго рассказывать, там может быть куча приколов, в видео там посвятили полтора часа этой теме.
В вашем случае подозрение на цепочки ключей, так как подпись не ставится. Попробуйте эту инструкцию: https://stackoverflow.com/questions/52421999/xcode-10-command-codesign-failed-with-a-nonzero-exit-code
Ну и еще можно попробовать просто по ssh подключится и проверить, не ждет ли он согласования ключей.
видео смотрел, все проверял что показано.
спасибо за ссылку, буду пробовать.
Тоже столкнулся с проблемой сборки. Приложение не хочет собираться не из сборщика 1С, не из xcode.
В xcode ошибка “missing required architecture i386”.
Мобильная платформа 8.3.11.57
Сборщик 2.0.6.10
На виртуалке MAC OS Sierra 10.12.6 xcode 9.2
Получилось у кого с этим разобраться?
http://курсы-по-1с.рф/news/2016-04-07-free-videos-mobile-ios/
Тут есть уже комментарий такой и ответ на него, попробуйте тоже самое.
Не удается собрать мобильное приложение для iOS.
Имеется платный аккаунт разработчика iOS.
Изначально в журнале сборки выходит такая проблема:
Переношу архив с проектом на MAC.
В проекте снимаю флажок “Automatically manage signing”, после этого в разделах Signing (для Debug и Release)
выбираю Provisioning Profile (подгруженый с Dev AppleID), Заполняется команда разработки (Team) и сертификат подписи
Ошибка с подписью пропадет, но компиляция не проходит со следующей ошибкой:
Не сталкивались с такой проблемой?
Версии софта:
Версия Mac OSX – 10.12.6 (Sierra)
Версия Xcode – 9.2 (такая же и у Command Line Tools)
Версия сборщика моб. приложений – 2.0.6.11
Версия моб. платформы – 8.3.10.84
Версия обычной платформы – 8.3.10.2252
На счет профиля – профили надо получать в сборщик из мака,а не загружать вручную. Если вы его получили, то он есть на маке, и проблемы не должно быть.
На счет второй проблемы – у вас какая стоит цель компиляции по версии iOS? Ее можно посмотреть в настройках, попробуйте поставить iOS 7, в крайнем случае – вы можете вручную добавить этот пакет, он так и называется в настройках пакета в самом xCode.
Ну и попробуйте тоже самое сделать с 8.3.11. Если не разберетесь, пишите, попробуй скринов наделать, а то у меня просто xCode 7 стоит, надо будет обновиться
Что значит профили надо получать в сборщик из мака? Вы про профиль обеспечения? При его добавлении в сборщик требуется указать локальный файл. Как его получить из мака?
xCode подтягиавет сертификат с инета, а 1С – подтягивает их из мака, там когда вы выбираете сертификат – 1С подключается к маку и ищет их там, соответственно – надо вначале их подгрузить на маке.
Дмитрий, сертификаты да, подтягиваются с мака, но вы пишите про профили обеспечения. Это совсем не одно и тоже. Профили обеспечения с мака не подтягиваются их нужно загрузить из файла.
Да, я уже запутался
Давайте так – попробуйте тоже самое сделать на 8.3.12+
У меня подозрение – что проблема исчезнет.
Руководство пользователя мобильного приложения для устройств на iOS
1. Требования к аппаратуре и программному обеспечению
2. Установка, обновление, удаление мобильного приложения
Установка мобильного приложения выполняется из магазина приложений App Store (http://itunes.apple.com/ru/genre/ios).
Обновление мобильного приложения выполняется средствами магазина приложений.
Для удаления мобильного приложения необходимо на мобильном устройстве запустить приложение App Store и в нем удалить мобильное приложение.
3. Запуск мобильного приложения
Для запуска мобильного приложения необходимо найти нужное приложение в списке и нажать на его картинку. При этом в большинстве случаев будет открыто основное окно мобильного приложения. Однако если с данной программой связано несколько приложений, то будет открыт список этих приложений. В этом случае для запуска приложения следует нажать на нужное приложение в списке.
4. Работа со списком приложений
Для выполнения большинства нижеперечисленных действий необходимо попасть в список приложений. Это можно сделать из запущенного приложения с помощью главного меню, выбрав там пункт Список приложений. Также список приложений доступен сразу при запуске мобильного приложения, если зарегистрировано более одного приложения.
Чтобы изменить порядок приложений в списке, следует зажать кнопку в правой части строки и перетащить строку приложения в требуемое место.
4.1. Создание приложения
4.2. Запуск приложения
При запуске мобильного приложения в большинстве случаев будет открыто основное окно приложения. Однако если с данной программой связано несколько приложений, то будет открыт их список. В этом случае для запуска приложения следует нажать на нужное приложение в списке.
4.3. Изменение свойств приложения
Свойства приложения изменяются в специальном окне. Для открытия окна свойств приложения следует в правой части строки с именем нужного приложения нажать кнопку >.
В открывшемся окне можно изменить наименование приложения, запустить его (кнопка Открыть) или удалить (кнопка Удалить).
4.4. Удаление приложения
Для удаления приложения следует нажать кнопку Изменить, затем нажать картинку в левой части строки с именем удаляемого приложения. Далее в правой части этой же строки нажать кнопку Удалить.
5. Обновление приложения
Мобильное приложение обновляется с помощью используемого магазина приложений. После его успешного обновления необходимо обновить ранее созданные приложения. Для этого достаточно запустить приложение.
Если в процессе выполнения обновления будет обнаружена необходимость реструктуризации базы данных, то будет запрошено подтверждение выполнения этой операции. В случае отказа обновление будет отложено до следующего запуска приложения.
Также имеет смысл отказаться от обновления, чтобы сделать резервную копию базы данных.
5.1. Интерфейс системы
Интерфейс мобильной платформы ориентирован на то, что в один момент времени на экране отображается одна форма. Под нее освобождается максимум свободного места на экране. Первой видимой формой обычно является рабочий стол. Команды, открывающие другие формы, собраны в главное меню приложения. Также это меню содержит команду возврата на рабочий стол, команды отображения информации о программе и перехода к списку приложений. Вызов главного меню приложения осуществляется с помощью кнопки Функции в левом верхнем углу основного окна приложения.
При работе с программой поддерживаются стандартные жесты увеличения и уменьшения масштаба.
5.2. Работа с формами
Практически в каждой форме есть команды, выполняющие определенные действия в форме. Часто используемые команды представлены в виде кнопок или гиперссылок на самой форме. Редко используемые команды доступны через специальное меню Все действия, доступ к которому осуществляется с помощью кнопки ≡.
Команды открытия вспомогательных форм реализованы с помощью специального меню, которое открывается с помощью нажатия на заголовок окна, если заголовок выделен подчеркиванием.
В форме могут располагаться табличные документы и диаграммы. В этих объектах может быть доступна функция расшифровки. Расшифровка — это действие, связанное со значением в ячейке табличного документа или элементе диаграммы. Это может быть открытие другой формы, построение другого отчета или перестроение текущего и т. д. Для выполнения расшифровки нужно нажать на интересующую ячейку или элемент диаграммы. Если расшифровка не поддерживается, ничего не произойдет.
6. Ввод текста
Для ввода различной информации предназначена экранная клавиатура. Для ее активации, как правило, достаточно нажать на поле ввода, куда требуется ввести информацию. Кнопка Ввод приводит к переходу между полями ввода без закрытия клавиатуры.
7. Мультимедиа
В мобильном приложении может быть предусмотрена работа с мультимедийными возможностями устройства: создание аудиозаписи, использование встроенной камеры (для фото- и видеосъемки).
В мобильном приложении может быть предусмотрена работа с мультимедийными возможностями устройства: создание аудиозаписи, использование встроенной камеры (для фото и видеосъемки).
Запись аудио. Нажать кнопку диктофона в центре нижней части экрана. Чтобы остановить запись, повторно нажать кнопку диктофона. Чтобы отменить запись, нажать кнопку Отменить.
На следующем этапе предусмотрена возможность перезаписать (кнопка Повторить), воспроизвести (кнопка >) или отменить запись (кнопка Отменить).
Сохраненная аудиозапись будет обработана мобильным приложением.
Запись видео. Нажать кнопку записи видео в центре нижней части экрана. Чтобы остановить запись, повторно нажать кнопку записи. Чтобы отменить запись, нажать кнопку Отменить.
На следующем этапе предусмотрена возможность перезаписать (кнопка Повторить), воспроизвести (кнопка >) или отменить запись (кнопка Отменить).
Сохраненная видеозапись будет обработана мобильным приложением.
Съемка фотографии. Нажать кнопку фотокамеры. Для отмены съемки нажать кнопку Отменить.
Сохраненный фотоснимок будет обработан мобильным приложением.
8. Местоположение на карте
В мобильном приложении может быть предусмотрена возможность работы с картографическим сервисом Apple Maps (отображение адреса).
В настройках телефона должна быть включена служба геопозиционирования.
9. Сообщения пользователю
Сообщения пользователю отображаются в специальной панели. Эта панель отображается на экране только в тот момент, когда в ней есть сообщения. Если панель закрывается, то список сообщений очищается. Нажатие на сообщение приводит к активации элемента формы, если сообщение связано с таковым. Для повторного открытия списка сообщений следует повторно вызвать действие, приводящее к открытию списка.
10. Резервное копирование
Резервное копирование данных выполняется в зависимости от используемого мобильного приложения.
Если используется мобильное приложение, не связанное с удаленной системой, то для резервного копирования можно воспользоваться штатными средствами используемой операционной системы мобильного устройства.
Если используемое приложение выполняет синхронизацию данных с удаленной системой, то рекомендуется выполнить сеанс синхронизации данных. Необходимость использования штатных средств резервного копирования после выполнения синхронизации зависит от наличия в мобильном приложении данных, которые не синхронизируются с удаленной системой. Если таких данных нет, то в случае возникновения проблем приложение можно пересоздать и провести начальную инициализацию данных из удаленной системы.
При создании приложения папка с данными приложения помечается как нерезервируемая. После того как изменяются данные приложения (в процессе работы с приложением), папка с данными приложения помечается как резервируемая и начинается ее резервное копирование с помощью системных средств.
1С:ERP 4+
1C-SOFT LLC
Для iPad
Снимки экрана
Описание
Мобильный клиент 1С:ERP предназначен для подключения с мобильных устройств к внедренной на предприятии корпоративной информационной системе «1С:ERP Управление предприятием 2».
Функциональные возможности:
• Управление производством
• Управление затратами и расчет себестоимости
• Мониторинг и анализ показателей деятельности предприятия
• Регламентированный учет
• Управление персоналом и расчет заработной платы
• Управление взаимоотношениями с клиентами
• Управление закупками
• Управление продажами
• Управление финансами и бюджетирование
• Управление складом и запасами
• Организация ремонтов
Внимание!
Для работы мобильного клиента требуется решение «1С:ERP Управление предприятием 2» версий 2.4.10, 2.5.3 и выше.
Конфигурация не должна содержать значительных изменений, допустима адаптация прикладного решения с помощью механизма расширений.
В версии «1С:ERP Управление предприятием 2» 2.5.3 для работы на мобильных устройствах специально адаптирована функциональность оперативного управления производством внутри цеха – сменные задания, выполнение производственных операций.
Доступ к остальным возможностям «1С:ERP Управление предприятием 2» предоставляется в ознакомительном режиме.
Особенности сборки и доставки iOS-приложений
В этой статье Максим Шестаков, DevOps Engineer в студии Plarium Krasnodar, делится опытом сборки и доставки пользователям приложений для iOS, который накопился в процессе отладки CI/CD.
Подготовка
Каждый человек, так или иначе связанный с разработкой приложений для устройств Apple, уже успел оценить спорное удобство инфраструктуры. Сложности встречаются повсюду: начиная с меню профиля разработчика и заканчивая инструментами отладки и сборки.
Статей об «азах» предостаточно в сети, поэтому постараемся выделить главное. Вот что нужно для успешной сборки приложения:
Основные типы профилей:
Для наглядности можно представить профиль разработчика в виде таблички ниже. Так проще понять, какие параметры для сборки нам нужны и откуда их брать.
Сборка
Существует два способа сборки файла *.ipa — устаревший (PackageApplication) и современный (через создание XcAchive и экспорт). Первый способ считается устаревшим, так как с версии 8.3 модуль упаковки app-файла убран из дистрибутива Xcode. Для его использования надо скопировать модуль из старого Xcode (версии 8.2 и более ранних) в папку:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/
И затем выполнить команду:
Далее нужно собрать *.app-файл приложения:
-workspace — путь к файлу проекта.
-scheme — используемая схема, указанная в проекте.
-derivedDataPath — путь выгрузки собранного приложения (*.app).
CODE_SIGN_IDENTITY — имя аккаунта разработчика, которое можно проверить в Keychain (iPhone Developer: XXXX XXXXXXX, без TeamID в скобках).
PROVISIONING_PROFILE — ID профиля для подписи приложения, который можно получить командой:
Если в приложении используется дополнительный профиль (например, для Push Notifications), то вместо PROVISIONING_PROFILE указываем:
Далее полученный файл *.app следует упаковать в *.ipa. Для этого можно использовать команду вида:
Однако данный способ считается устаревшим с точки зрения Apple. Актуальным является получение *.ipa путем экспорта из архива приложения.
Для начала нужно собрать архив командой:
Далее нам надо сгенерировать файл с настройками экспорта:
$Method — метод доставки, соответствует типу профиля подписи приложения, то есть для Development значение будет development, для Ad Hoc — ad-hoc, а для App Store — app-store.
$BundleID — ID приложения, который указан в настройках приложения. Проверить можно командой:
$TeamID — десятизначный ID в скобках после имени разработчика, пример: iPhone Developer: …… (XXXXXXXXXX); можно проверить в Keychain.
Далее с помощью команды экспорта получаем необходимый файл *.ipa:
Доставка
Теперь собранный файл нужно доставить конечному пользователю, то есть установить на устройство.
Для распространения билдов Development и Ad Hoc существует множество сервисов вроде HockeyApp, AppBlade и прочих, однако в рамках данной статьи речь пойдет об автономном сервере для раздачи приложений.
Установка приложения для iOS проходит в 2 этапа:
Как видим, манифест содержит практически все параметры, участвующие в сборке приложения.
Таким образом, для установки приложения достаточно простой html-страницы со ссылкой вида:
Для нужд отделов разработки и тестирования компания Plarium создала свое приложение установки билдов, которое дает нам:
Тестирование
Теперь речь пойдет о предрелизном тестировании приложения с помощью TestFlight.
Обязательными условиями для загрузки являются тип профиля подписи App Store и наличие сгенерированных API-ключей.
Есть несколько способов загрузки приложения:
Для получения API Key переходим по ссылке и генерируем ключ. Кроме самого ключа в формате *.p8, нам понадобятся два параметра: IssuerID и KeyID.
Далее скачанный ключ импортируем на билд-сервер:
Перед загрузкой приложения в TestFlight нужно выполнить валидацию приложения, делаем это командой:
Где apiKey и apiIssuer имеют значения полей со страницы генерации API-ключа.
Приложение будет проверено Apple в течение одного-двух дней и после станет доступным внешним тестировщикам: им пришлют на почту ссылки для установки.
Другим способом загрузки приложения через altool является использование App-Specific Password.
Для получения App-Specific Password нужно перейти по ссылке и сгенерировать его в разделе Security.
Далее следует создать в Keychain запись билд-сервера с этим паролем. С 11 версии Xcode это можно сделать командой:
$DeveloperName — имя аккаунта iOS-разработчика, используемое для логина в сервисы Apple.
$AppPswd — сгенерированный App-Specific Password.
Далее получаем значение параметра asc-provider и проверяем успешность импорта пароля командой:
Для валидации и загрузки приложения в TestFlight применяем команду:
Однако, как уже было сказано, с точки зрения работоспособности для авторизации altool лучше выбрать API Key, так как в разных версиях Xcode встречаются те или иные проблемы («не видит» Keychain, ошибки авторизации при выгрузке и прочее).
На этом, собственно, все. Желаю всем причастным успешных сборок и беспроблемных релизов в App Store.