Pull to refresh

Установка собственных приложений без сертификата разработчика в 7 шагов

Reading time 3 min
Views 8.2K
Привет, Хабр!

Полагаю, большинству, кто сталкивался с разработкой под iOS, известно, что без сертификата разработчика невозможно тестировать и отлаживать приложение на реальном устройстве. Стоит он $99 в год. Конечно, можно обойтись встроенным симулятором, но его функционал сильно урезан. К тому же тестирование и отладка на девайсе гораздо удобнее в плане наглядности.

Но стоит ли платить эти деньги, если Вы, например, только учитесь или ваше приложение служит для личного «домашнего» использования, т.е. ваши приложения не несут никакой финансовой выгоды? Думаю, что нет.
Есть способ обойти этот запрет. Однако, он служит только для установки собственных приложений, в то время как отладка остается недоступной.

Если, несмотря на ограничения, Вы заинтересовались — добро пожаловать под кат.

ВМЕСТО НАПУТСТВИЯ

Начнем с того, что все манипуляции проводились на Macbook Pro с OS X 10.8.3 и Xcode 4.6.1 на борту, а в качестве девайса был взят iPhone 5 c iOS 6.1. Таким образом, на данный момент способ является актуальным и рабочим.

ШАГ ПЕРВЫЙ

Первым делом нужно произвести jailbreak устройства, на котором Вы собираетесь тестировать приложения, благо утилита evasi0n поддерживает все девайсы на последней прошивке.
После этого в Cydia нужно установить AppSync для 6.х. например, AppSync 5.0+ из репозитория cydia.xsellize.com (как это делается подскажет гугл).

ШАГ ВТОРОЙ

Теперь создадим собственный сертификат подписи кода.
Для этого запускаем Связка ключей -> Ассистент сертификации -> создать сертификат. Откроется окно ассистента сертификации. Вводите имя (например iOS developer) и выбираете тип сертификата «подпись кода». Не забудьте поставить галочку напротив «Заменить настройки по умолчанию».

image

Далее выбираем срок действия. В информации о сертификате поле «адрес e-mail» оставляем пустым. И нажимаем «продолжить», пока сертификат не будет создан.
В итоге связка ключей должна выглядеть так.

image

ШАГ ТРЕТИЙ

Переходим в /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform, копируем Info.plist на рабочий стол и открываем.

image

Заменяем значение XCiPhoneOSCodeSignContext на XCCodeSignContext. Оно встречается в файле 3 раза: DefaultProperties, RuntimeRequirements и OverrideProperties.

Копируем измененный файл обратно в /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/ и заменяем исходный, не забыв сделать его бекап.

ШАГ ЧЕТВЕРТЫЙ

Закрываем и перезапускаем Xcode. Теперь создаем новый или открываем существующий проект. В Targets выбираем Build Settings и во вкладке Code Signing выбираем созданный сертификат.

image

ШАГ ПЯТЫЙ

Наконец можно собрать приложение (Product -> Build). И в папке Products появится заветная сборка.

image

ШАГ ШЕСТОЙ

Выбираем нашу сборку и правым кликом «показать в Finder». Создаем папку Payload и копируем
[название приложения].app в эту папку (по умолчанию все файлы сохраняется по пути
/Users/[имя пользователя]/Library/Developer/Xcode/DerivedData/[название приложения]/Build/Products/Debug-iphoneos/).

image

ШАГ СЕДЬМОЙ

Архивируем и полученный Payload.zip переименовываем в [название приложения].ipa и получаем приложение, готовое к установке.

image

Такое приложение можно установить через iTunes либо скинуть на устройство и установить например, через AppCake.

И напоследок фото приложения
imageimage
image


UPD.: Спасибо за альтернативный, а главное автоматический вариант kjuby. Для этого нужно скачать утилиту jailcoder и следуя инструкциям добавить 2 сертификата, пропатчить Хcode и пропатчить проект. После чего, будет доступен режим тестирования и отладки.
Tags:
Hubs:
+2
Comments 10
Comments Comments 10

Articles