Pull to refresh

Публикация HTML5-приложений в AppStore без Mac

Reading time 2 min
Views 14K
Многие разработчики гибридных мобильных приложений сталкиваются с проблемой подписи и публикации iOS-приложений без использования Mac.

С Android все более или менее просто: устанавливаем SDK (под Windows, Mac или Linux), собираем приложение, а публикация apk в Google play осуществляется через веб-интерфейс. С Apple такой номер не проходит: для генерации ключа, подписи приложения и публикации ipa в AppStore нужен Mac. Как решить эту проблему в Windows?

OpenSSL


Вам необходимо скачать и установить OpenSSL под Win. На стадии установки, выберите копирование DLL-файлов в папку /bin, вместо системной директории.



В остальной части этого руководства предполагается что вы скачали "Win32 OpenSSL v1.0.2e" и установили в папку C:\OpenSSL.

Генерация ключей


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

C:\OpenSSL\bin\openssl genrsa -out mykey.key 2048

2. Введите следующую команду для создания запроса сертификата (CSR):

C:\OpenSSL\bin\openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj "/emailAddress=you@mail.ru, CN=Your Name, C=RU"

Не забудьте указать свои электронный адрес и имя, а в поле C= поменять код вашей страны, если это необходимо.

3. Перейдите в аккаунт разработчика на сайте Apple, в раздел «Certificates, Identifiers & Profiles». Нажмите кнопку для добавления сертификата:



4. Выберите какой тип сертификата вам нужен (для публикации в AppStore подходит App Store and Ad Hoc).
5. Сайт выведет информацию о Certificate Signing Request (CSR), смело жмем «Continue».

6. Загрузите файл запроса сертификата (.certSigningRequest) и нажмите «Generate».



7. Сертификат ios_distribution.cer готов. Скачайте его в папку, которую создали ранее.

8. В командной строке введите команду для преобразования .cer в .pem:

C:\OpenSSL\bin\openssl x509 -in ios_distribution.cer -inform DER -out ios_distribution.pem -outform PEM

9. После этого, ведите команду генерации P12-ключа:

C:\OpenSSL\bin\openssl pkcs12 -export -inkey mykey.key -in ios_distribution.pem -out iphone_dist.p12

Вам будет предложено ввести пароль и подтвердить его.

Генерация профиля


1. Возвращаемся в аккаунт разработчика Apple, в раздел Identifiers > App IDs и создаем ID приложения.
2. После этого, инициализируйте профиль приложения в разделе «Provisioning Profiles > Distribution». Вам нужно выбрать App ID и сертификат, который будет включен в профиль. Нажмите «Generate» и скачайте .mobileprovision-файл:



Загрузка в AppStore


Используя provision-файл и P12-ключ вы сможете собрать ipa-файл в облаке PhoneGap Build или Intel XDK.

Осталось загрузить ваш ipa-файл в AppStore. К сожалению, сделать это можно только через Xcode или Application Loader, которые работают только под Mac. Чтобы решить эту проблему, кто-то покупает Mac mini (как самый бюджетный из линейки Mac), кто-то использует специальные сервисы.

Лично я арендую удаленный Mac через интернет (примеро 1$ в час):
macincloud.com
virtualmacosx.com
macminivault.com
Tags:
Hubs:
+15
Comments 15
Comments Comments 15

Articles