(Внимание, под катом пробки) Подготовка и распространение IOS-приложения внутри компании — непростая задача, особенно когда приложение написано на Windows с использованием Visual Studio, а большинство руководств в Интернете описывают исключительно MacOS с использованием Xcode. Однако после многочасовой битвы с детищем Apple нам удалось совершить, казалось бы, невозможное, а именно: скрестить жирафа с носорогом, собрать iOS-приложение на Xamarin в архив Xcode, непосредственно на MacOS, затем получить необходимые файлы для распространения, и, наконец, создайте ссылку, по которой будет распространяться приложение.
Да, это не кажется очень трудным для слуха.
Однако когда дело доходит до разработки приложений для устройств Apple, все становится в несколько раз непонятнее и сложнее.
И после триумфальной, но непростой победы нам захотелось оставить свой след в истории, написав этот урок.
Предпосылки:
1. Необходимо иметь учетную запись Apple Enterprise — 299 долларов США в год.
1 шаг.
Создание сертификата.
1. Сначала на Mac вам необходимо создать запрос на создание сертификата.
Для этого нужно открыть доступ к связке ключей, например, через поиск:
2. В левом верхнем углу экрана выберите доступ к связке ключей, в выпадающем меню выберите «помощник по сертификатам» --> «запросить сертификат у центра сертификации», откроется соответствующее окно:
3. В появившемся окне заполните поля «Адрес электронной почты пользователя» — ваш адрес электронной почты, и «Общее имя» — имя ключа.
А также выберите пункт «Сохранено на диск», чтобы сохранить файл запроса на свой компьютер.
И нажмите кнопку «Продолжить»:
4. Далее появится окно, в котором нужно указать имя файла запроса и выбрать путь для сохранения файла.
Внесите необходимые изменения и сохраните:
5. После успешного сохранения появится следующее окно.
Нажмите «Готово»:
6. После мы видим, что в месте сохранения (в данном примере на рабочем столе) создан файл запроса.
Либо мы можем увидеть созданный ключ в списке ключей в «связке ключей»:
7. Далее нам необходимо создать сертификат, сделать это можно на сайте.
Apple для разработчиков войдя в свою учетную запись:
8. После успешного входа в аккаунт переходим в «Сертификаты, идентификаторы и профили», также на странице сертификатов нужно убедиться, что выбрано «IOS, tvOS, watchOS»:
9. Далее на странице в разделе «Сертификаты» нужно выбрать «Производство»:
10. На странице нажмите на кнопку с изображением «+» для создания сертификата.
Появится страница, на которой необходимо выбрать тип создаваемого сертификата:
11. В этом примере нас интересует метод внутреннего распространения, поэтому в качестве типа сертификата нам нужно выбрать «Внутренний и специальный».
Затем нажмите кнопку «Продолжить»:
12. Затем мы перейдем к следующей странице создания сертификата, где будет описано, как создать запрос на сертификат в MacOS. Мы уже создали этот запрос в предыдущих пунктах.
Нажмите кнопку «Продолжить»:
13. На следующем этапе вам нужно будет загрузить на рабочий стол файл запроса, который мы создали ранее.
После успешной загрузки нажмите «Продолжить»:
14. После этого будет сгенерирован сертификат, и на следующей странице его можно будет скачать на свой компьютер:
15. Загрузите сертификат, в данном примере, на рабочий стол.
Созданный сертификат мы также можем увидеть на сайте:
Как мы видим, в результате мы успешно получили сертификат. Следующим шагом будет создание идентификатора приложения.
Шаг 2. Создание идентификатора приложения.
На предыдущем шаге мы успешно создали сертификат, теперь нам нужно создать идентификатор приложения.
Для этого вам нужно:
1. На сайте Apple для разработчиков , в личном кабинете сначала зайдите в «Сертификаты, идентификаторы и профили», также на странице сертификатов нужно убедиться, что выбрано «IOS, tvOS, watchOS»:
2. Далее на странице в разделе «Идентификаторы» нужно выбрать «Идентификаторы приложений»:
3. На странице нажмите на кнопку с изображением «+», чтобы создать App ID. Появится страница, на которой необходимо выбрать настройки создаваемого идентификатора.
Настройки ID индивидуальны для вашего приложения, единственное важное уточнение – в графе App ID Suffix нужно выбрать Explicit App ID:
4. После создания идентификатора приложения его можно будет увидеть на сайте:
В результате двух шагов мы успешно получили сертификат и создали App ID. Далее нам нужно создать профили обеспечения, используя созданный сертификат. И это подводит нас к следующему шагу «Шаг 3».
Создание профилей обеспечения».
3 Шаг.
Создание профилей обеспечения.
На предыдущем шаге мы успешно создали сертификат, теперь нам нужно создать с его помощью Provisioning Profiles. Для этого вам нужно:
1. На сайте Apple для разработчиков , в личном кабинете сначала зайдите в «Сертификаты, идентификаторы и профили», также на странице сертификатов нужно убедиться, что выбрано «IOS, tvOS, watchOS»:
2. Далее на странице в разделе «Профили обеспечения» необходимо выбрать «Распространение»:
3. На странице нажмите кнопку с изображением «+», чтобы создать Provisioning Profiles. Появится страница, на которой необходимо выбрать тип создаваемого профиля:
4. В этом примере нас интересует метод внутреннего распределения; соответственно, выберите тип профиля «В доме» и нажмите кнопку «Продолжить»:
5. На следующей странице вам необходимо выбрать идентификатор приложения, созданный ранее на шаге 2:
6. После нажатия кнопки «Продолжить» переходим к выбору сертификата, мы его создали на шаге 1. Далее нажимаем кнопку «Продолжить»:
7. На следующей странице нам необходимо заполнить поле с именем профиля и проверить данные перед созданием профиля:
8. После этого профиль будет сгенерирован и вы сможете его скачать:
9. Загрузите профиль обеспечения (в данном примере) на рабочий стол.
Мы также можем увидеть созданный профиль обеспечения на сайте и убедиться, что он активен:
В результате трех шагов мы успешно создали профиль обеспечения.
4 Шаг.
Создание архивов Xcode (.
xcarchive) на основе вашего приложения в Visual Studio для Windows и последующее создание файлов .
ipa и .
plist. Предыдущие шаги выполнялись на компьютере Apple (Mac), далее я расскажу, как создать .
xcarchive в Visual Studio 2017 для Windows непосредственно на Mac.
1. Для этого нам понадобится приложение Xamarin в Visual Studio, которое будет подключено к Mac:
2. В решении нужно выбрать проект IOS, щелкнув по нему правой кнопкой мыши.
В появившемся меню выберите «Свойства».
В открывшемся окне выберите «Настройка пакета ios».
Далее в «настройке пакета» выбираем «ручная подготовка», а ниже в графе «ручная подготовка» выбираем ваш сертификат и профиль, который мы создали на предыдущих шагах:
3. В проекте IOS нужно выбрать файл Info.plist и убедиться, что «идентификатор пакета» соответствует нужному App ID:
4. Затем откройте командную строку разработчика в Visual Studio (от имени администратора) «Командная строка разработчика для VS 2017» и либо перейдите в каталог с iOS-проектом, либо укажите полный адрес при создании команды.
Эта команда создаст архив .
xcarchive на Mac из Visual Studio. Сам архив не содержит нужных нам для раздачи файлов .
ipa и .
plist, поэтому после генерации архива нам нужно будет их создать.
Подробнее о том, как создать архив, вы можете узнать Здесь .
Команда:
msbuild /p:Configuration=Release /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhone /p:ArchiveOnBuild=true /t:"Build" MyProject.csproj
5. После успешного выполнения команды на Mac должен был быть создан архив.
Нам нужно запустить Xcode, выбрать в нем «Windows» и из этого меню выбрать «Organazer».
Там в разделе «Архив» мы увидим созданный архив .
xcarchive:
6. Теперь нам нужно на основе созданного архива создать файлы .
ipa и .
plist. С их помощью мы сможем распространять наше приложение минуя AppStore, например, внутри компании.
Далее нам нужно нажать кнопку «Распространить приложение».
В появившемся меню выберите «Предприятие» и нажмите кнопку «Далее»:
7. Далее необходимо выбрать устройства, на которые можно распространять и обязательно выбрать «включить манифест для беспроводной установки», чтобы можно было загрузить приложение из браузера:
8. В следующем окне нужно указать «Имя» — название приложения; «URL приложения» — путь к файлу .
ipa; «Отображаемый URL изображения» — Путь к иконке 57х57; «URL полноразмерного изображения» — путь к иконке 512х512. Важно, чтобы сервер, на котором расположены файлы .
ipa и .
plist, был зашифрован, то есть он должен быть https. В примере используется сервис почтовый ящик .
При использовании службы Dropbox Важно знать : правильный путь к файлу по публичной ссылке не должен начинаться с « https://www.dropbox.com/ », как указано в сгенерированной ссылке, и с « https://dl.dropboxusercontent.com/ ”.
9. На следующем этапе нам необходимо выбрать созданный сертификат и Provisioning Profile:
10. После этого мы увидим успешно собранное приложение, и нам необходимо выбрать, куда сохранить папку с приложением, которое затем будем распространять:
11. После сохранения на рабочем столе создалась папка.
Содержимое папки вы можете увидеть на скриншотах ниже; при генерации создаются 4 файла .
plist и обычно 1 .
ipa, но в тестовом приложении это немного по-другому, но в данном случае нас будет интересовать файл, имя которого содержит только имя нашего приложения.
Что касается четырех файлов .
plist, то нам понадобится файл «manifest.plist».
Для установки приложения необходим plist, в котором описаны предустановочные свойства.
Вы можете узнать больше о Enterprise Distribution и посмотреть, как выглядит файл манифеста.
plist. Здесь :
Таким образом, на этом этапе мы успешно создали файлы .
ipa и .
plist приложения, созданного в Visual Studio 2017, которые мы будем использовать для внутреннего распространения.
5 Шаг.
Распространение приложений На предыдущих шагах мы подготовили наше приложение к распространению.
На этом этапе мы создадим простой html файл со ссылкой и разместим его на локальном IIS, это сделано для упрощения примера, но расположение ссылки не имеет значения.
Нет в ссылке на пример может быть размещен на вашем собственном веб-сайте, чтобы он был доступен сотрудникам, точно так же, как файлы приложений должны размещаться на вашем собственном сервере.
Однако в этом примере, как упоминалось ранее, мы использовали сервис Dropbox. 1. Сначала нам нужно поместить файлы (значки, файл .
ipa и манифест.plist) в Dropbox и сделать их доступными по ссылке:
2. Затем создаем html-файл следующего содержания: <html>
<body>
<a href=" itms-services://Эaction=download-manifest&url=https://www.yoursite.ru/dirname/manifest.plist ">
Install iOS in-house App</a>
</body>
</html>
3. Далее загружаем этот html файл на локальный IIS (или на ваш сайт), и перейдя по этой ссылке с мобильного устройства нам будет предложено установить приложение.
После установки приложения пользователю необходимо подтвердить доверие к сертификату на устройстве.
Настройки → Общие → Управление устройствами → «Название предприятия».
тогда только пользователи смогут открыть приложение:
Нижняя граница
В результате 5 шагов мы создали сертификат и Provisioning Profile, собрали архив Xcode из Visual Studio 2017, получили файлы .ipa и .
plist для распространения, а также смогли успешно установить приложение на устройство, перейдя по ссылке.
, тем самым минуя AppStore. Теги: #Разработка iOS #Разработка мобильных приложений #C++ #руководство #Visual Studio #приложение ios #приложение ios #собственно #xamarin #AppStore #visual studio 2017 #xamarin.ios #MacOS 12 #Enterprise Distribute
-
Менеджер Аккаунта Google
19 Oct, 24 -
Неожиданная Встреча. Глава 5
19 Oct, 24 -
От Четырех До Тридцати Двух
19 Oct, 24 -
Музыкальные Виджеты 9 Месяцев Спустя
19 Oct, 24