Запуск и тестирование своих iOS-приложений на устройстве без аккаунта разработчика и без Jailbreak

Как протестировать ios приложение на своем iphone. Как запустить свое приложение из XCode на устройстве без аккаунта разработчика и без Jailbreak. Инструкция на русском языке.

Запуск и тестирование своих iOS-приложений на устройстве без аккаунта разработчика и без Jailbreak

При разработке мобильных iOS приложений в среде XCode запуск и тестирование происходит на симуляторе. Однако каждый профессиональный разработчик вам скажет, что окончательную отладку нужно производить на реальных устройствах. Причем лучше на нескольких различных устройствах. На iPhone 5, на iPhone 6, на различных версиях iPad и iPod. Однако для этого политика компании Apple заставляет приобрести аккаунт разработчика. Он стоит $99 и для начальных шагов в программировании не всегда оправданы эти затраты. И вот наконец, просьбы разработчиков были услышаны и появился способ легального запуска своих приложений на реальных устройствах и этот способ абсолютно бесплатный.

Были различные варианты решения этой проблемы от установки на устройство Jailbreak до недорогого варианта добавления UDID устройства к реально существующему аккаунту разработчика. (Последний способ стоит 300 руб). Но как написано выше с выходом XCode 7 эта проблема была решена.

Так что же нужно для запуска своих приложений на реальном устройстве?

Все что вам нужно, это Apple ID! Больше ничего не нужно.

Подключение устройства

Подключите iPhone, Ipod Touch, или IPad к вашему Mac с помощью кабеля USB кабеля. В меню Xcode зайдите Window → Devices, чтобы открыть список устройств. Окно выглядит следующим образом (я использую iPad Air):

test_your_app_4_proSwift_ru

В левой панели окна Xcode находится список устройств, которые могут быть использованы для запуска разработанных приложений. Нажмите на изображение вашего устройства, чтобы выбрать его. Если устройство используется впервые вместе с Xcode, вы увидите сообщение что-то вроде, «“iPad is not paired with your computer.«

test_your_app_5_proSwift_ru

Для того чтобы связать устройство с Xcode вам нужно разблокировать устройство (Slide to unlock). После разблокировки, на экране устройства появится сообщение с просьбой доверять этому компьютеру. Нажмите «Разрешить» чтобы продолжить. Теперь Xcode выведет страницу, на которой напишет что позволяет использовать устройство для тестирования.

Дайте ему несколько минут — если процесс занимает слишком много времени, возможно потребуется отсоединить устройство и подключить его снова. Есть вероятность, что выскочит сообщение об ошибке: «An error was encountered while enabling development on this device.» Потребуется отключение устройства и перезагрузка его. Также перезапустите Xcode, прежде чем вы снова подключите устройство.

Так должно выглядеть окно с сопряженным устройством:

test_your_app_6_proSwift_ru

Настройка AppleID

Теперь, когда устройство сопряжено с компьютером, нужно связать ваш AppleID с Xcode. Можно использовать тот же идентификатор AppleID, что вы уже используете с Itunes и вашим устройством, однако, если вы разрабатываете корпоративное iOS приложение, то можете создать новый AppleID, чтобы разделить процессы разработки. Конечно, если у вас уже есть оплаченный аккаунт разработчика вы должны использовать именно его

Откройте меню Xcode -> Preferences -> Accounts:

test_your_app_7_proSwift_ru

Нажмите кнопку «+» внизу и выберите «Add Apple ID«. Xcode попросит логин и пароль от AppleID. Введите их и нажмите «Add«. Xcode проверит ваши данные и добавит их к списку аккаунтов.

Примечание: возможно Xcode не сможет использовать ваш Apple ID при условии, если он был ранее был использован как аккаунт разработчика, срок действия которого в настоящее время истек. Простейшим решением в этом случае является создание нового Apple ID. Это бесплатно и займет всего несколько минут. https://appleid.apple.com

Настройка проекта XCode

Вы все еще должны указать Xcode использовать эту учетную запись при создании вашего приложения. Перейдите к экрану настроек проекта и на вкладке General нажмите на Team, чтобы выбрать ваш Apple ID.

test_your_app_8_proSwift_ru

Ниже поля выбора команды вы видите предупреждение, «No code signing identities found» или «No matching provisioning profiles found«. Не лишним будет знать, что означают эти предупреждения. Для того чтобы Xcode мог запустить приложение на вашем iPhone, iPad или iPod, приложение должно быть подписано цифровой подписью с сертификатом на разработку (Development Certificate). Сертификат является электронным документом, который идентифицирует вас как разработчика iOS приложений и действует только в течение ограниченного периода времени. Приложения, которые вы хотите представить в App Store должен быть подписаны другим сертификатом «Distribution Certificat». Для использования Distribution Certificat необходимо быть членом платной программы разработчиков, однако использование сертификата разработки (Development Certificate) является бесплатным. В дополнение к действующему сертификату также необходим так называемый профиль обеспечения (Provisioning Profile) для каждого приложения которое вы разрабатываете. Xcode использует эти документы чтобы подписать приложение для запуска на вашем устройстве.

Специфика данных документов на первоначальных этапах разработки не имеет значения. Просто примите, что вам нужен Provisioning Profile или приложение не будет работать на вашем устройстве. Создание сертификатов и Provisioning Profile, в XCode 7 это очень простая задача!

Нажмите кнопку Fix Issue. Нужно немного подождать пока Xcode автоматически регистрирует устройство с вашей учетной записью, создает новый сертификат разработки, загружает и устанавливает Provisioning Profile на ваше устройство. Раньше вы должны были бы сделать это все вручную, но теперь Xcode 7 берет всю работу на себя. В этот момент возможно вы увидите следующее сообщение об ошибке:

test_your_app_a_proSwift_ru

Идентификатор пакета Bundle Identifier — это идентификатор приложения и он должен быть уникальным. Если какое либо другое другое приложение уже использует этот идентификатор, то вы не можете его использовать.

Поэтому для 100% уникальности следует указывать собственное доменное имя для Bundle ID, например ru.proswift.TestApp. Исправить эту ошибку легко: измените Bundle Identifier и повторите попытку.

Также возможно вы получите эту ошибку:

test_your_app_b_proSwift_ru

Xcode должен знать об устройстве на котором вы собираетесь запустить приложение. Вот почему мы начали именно с подключения устройства. Еще раз проверьте, что ваш iPhone или iPad по-прежнему подключен к Mac, и что ваше устройство есть списке Devices. У меня это окно выглядит так:

test_your_app_6_proSwift_ru

В основном окне XCode еще раз выберете ваше устройство и нажмите кнопку Fix Issue и предупреждение должно исчезнуть.

test_your_app_f_proSwift_ru

Настройка связки ключей

Все настроено и готово к работе. Нажмите Run, чтобы скомпилировать и запустить приложение. В этот момент вы можете получить всплывающее окно с вопросом «codesign wants to sign using key … in your keychain». Если вышло это сообщение, нажмите Always Allow — т.е. разрешать всегда. Это сообщение говорит о том, что Xcode пытается использовать новый сертификат разработки, который вы только что создали, но просит дать ему разрешение для этого.

Ваше приложение заработало на устройстве без аккаунта разработчика и без Jailbreak? Потрясающие! Если нет, то читайте дальше …

Возможные проблемы и их решение

Есть несколько ошибок, которые могут возникнуть при попытке запуска своего iOS приложения на реальном устройстве, особенно если вы никогда не делали этого раньше. Так что не паникуйте, если вы столкнетесь с проблемами.

Устройство не подключено.

Как ни странно это самая распространенная ошибка, поэтому я напишу о ней в третий раз в этой статье. Убедитесь, что ваш iPhone, iPod Touch, или iPad подключены к Mac. Устройство должны быть списке устройств Xcode, и на нем не должно быть желтого значка предупреждения, о том что устройство не доверяет компьтеру.

Подозрительный не одобренный Apple разработчик.

test_your_app_d_proSwift_ru

Если XCode выдаст такое сообщение, а на устройстве выйдет сообщение с текстом «Untrusted Developer. Your device management settings do not allow using apps from developer «, не нужно втираться в доверие к Apple :-). Для решения этой проблемы откройте на устройстве Настройки -> Основные -> Управление Устройством. Выберете профиль вашего Apple ID и вы увидите список приложений на устройстве, которые нужно перевести в разряд «Проверенные». Попробуйте снова запустить приложение.

Test_your_ios_app_free_1_proSwift_ru

Test_your_ios_app_free_3_proSwift_ru

Test_your_ios_app_free_2_proSwift_ru

Устройство заблокировано.

Если на устройстве установлен пароль, то вы можете получить это предупреждение:

test_your_app_free_e_proSwift_ru

Приложение не будет работать если устройство заблокировано. Для решения нужно разблокировать устройство и запустить компиляцию еще раз.

Надеюсь данная информация будет вам полезна. По себе знаю, что начиная разрабатывать iOS приложения, разработчики сталкиваются с проблемой тестирования своих приложений на реальных устройствах. А несправедливость в виде $99 никак не греет душу брата программиста. И даже если разработчик решается на Jaibreak, все равно для запуска потребуется куча сторонних бубнов. Вариант описанный в данной статье позволит вам запускать и тестировать свои приложения без этих бубнов и совершенно бесплатно.

Протестируйте приложение iOS на устройстве без программы разработчика apple или джейлбрейка

Как протестировать приложение iOS на ipod touch без регистрации в программе Apple developer или джейлбрейка ipod?

ни один из жизнеспособных вариантов на данный момент.

Я хотел бы протестировать на самом устройстве вместо экранного эмулятора, чтобы увидеть, как он работает на реальном ipod.

9 ответов

через семь лет после создания App Store (10 июля 2008 года), Apple, наконец, представила новую функцию в Xcode 7, которая позволяет развертывать и запускать любое количество приложений на любом из ваших устройств, просто войдя в систему с Apple ID. вам больше не понадобится членство в платной программе для развертывания приложений на вашем собственном устройстве (и вам, конечно, больше не придется джейлбрейк устройства, если вы не комфортно делать это).

Ну, не для большинства использования по крайней мере, дела. По понятным причинам определенные возможности и права, требующие участия в программе, такие как Game Center и покупки в приложении, будут недоступны для приложений, развернутых с помощью этого метода. От документация разработчика Apple:

запустите приложение на устройствах, использующих бесплатную подготовку (iOS, watchOS)

Если вы не присоединитесь к программе разработчика Apple, вы все равно можете создавать и запускать приложение на своих устройствах с помощью свободный провизия. Тем не менее, возможности, доступные для вашего приложения, описанные в Добавление Возможности, ограничены, когда вы не принадлежите к программе разработчика Apple.

точные шаги для получения вашего приложения на устройстве iOS или Apple Watch немедленно следуют таким образом (скриншоты опущены для удобства просмотра):

  1. в Xcode добавьте свой Apple ID в настройки учетных записей, описанные в Добавлять Свои Учетная запись Apple ID в Xcode.

  2. в навигаторе проектов выберите проект и цель для отображения редактора проектов.

  3. нажмите «Общие» и выберите свое имя во всплывающем меню «команда».

  4. подключите устройство к компьютеру Mac и выберите устройство в меню Панели инструментов схема.

  5. во всплывающем меню команды нажмите кнопку исправить проблему.

    в Xcode создает бесплатный профиль подготовки для вас и предупреждающий текст во всплывающем меню команды исчезают.

  6. нажать кнопку «Выполнить».

    Xcode устанавливает приложение на устройство перед запуском приложения.

до Xcode 7 членство в программе действительно требовалось для подписания сертификатов подготовки, необходимых для развертывания приложений на устройствах. Единственной альтернативой был побег из тюрьмы. С Xcode 7, вы не больше не нужно джейлбрейк только для запуска приложений, распространяемых за пределами магазина приложений, или для тестирования приложений, Если вы не можете позволить себе присоединиться к программе, или для развертывания и эксплуатации приложений, которые вы разработали для вашего собственного личного использования, если вы не намерены распространять их через магазин приложений (в этом случае вы, вероятно, не нужно льгот, предлагаемых программой членства во всяком случае).

есть способ сделать это.

вам понадобится ROOT-доступ для редактирования следующего файла.

перейти к /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk и откройте файл SDKSettings.plist .

в этом файле, расширить DefaultProperties, и CODE_SIGNING_REQUIRED to NO , пока вы там, вы можете также изменить ENTITLEMENTS_REQUIRED to NO также.

вам придется перезапустить Xcode, чтобы изменения вступили в силу. Кроме того, вы должны сделать это для каждого .sdk вы хотите иметь возможность работать на устройстве.

теперь в настройках проекта, вы можете изменить Code Signing Identity to Don’t Code Sign .

теперь ваше приложение должно успешно создавать и устанавливать на вашем устройстве.

обновление:

есть некоторые проблемы с iOS 5.1 SDK что это метод может не работать точно так же. Любые другие обновления будут перечислены здесь, когда они станут доступными.

обновление:

вы можете найти правильный путь к SDKSettings.plist С xcrun .

Новые SDKSettings.расположение plist для iOS 5.1 SDK:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/SDKSettings.plist

с Xcode 7 вам больше не требуется иметь учетную запись разработчика, чтобы тест ваши приложения на вашем устройства:

enter image description here

обратите внимание, что это официально поддерживается Apple, так что есть нет необходимости в взломанных устройствах или тестирование на симуляторе, но вам придется использовать Xcode 7 (в настоящее время в бета-версии к моменту этого сообщения) или позже.

Я успешно развернул приложение на свой iPhone без учетной записи разработчика. Вам придется использовать учетная запись iCloud для решения проблем с профилем подготовки. Просто добавьте свою учетную запись iCloud и назначьте ее в команда в выпадающем списке (в личность) и Исправлена Проблема кнопка должна сделать все остальное.

У некоторых людей возникают проблемы с iOS 8.4, вот как это исправить.

Я никогда не пробовал, но делаю поиск google,Jailcoder похоже на решение. Проблема в том, что устройство должно быть взломано. Если кто-нибудь попробует это, прокомментируйте и сообщите нам, как это сработало.

ссылки на Джейлкодер выше указывают на сайт, который больше не существует. Похоже, вы должны использовать http://oneiros.altervista.org/jailcoder/ или https://www.facebook.com/jailcoder

на Параметры Построения, под Подписывание Кода, set Идентификатор Подписи Кода as разработчик iOS & Профиль Подготовки as автоматическая.

выберите устройство (теперь видно) из выпадающего списка и запустите приложение.

enter image description here

просто проверял JailCoder www.jailcoder.com и я могу бежать и debug на устройствах с джейлбрейком. Вам просто нужна свежая нетронутая установка xCode, если нет, просто удалите и установите xCode снова и запустите JailCoder

Это стоит доллара, чтобы подать заявку на программу разработчика Apple. Вы сможете использовать специальную подготовку для распространения приложения на тестеры и тестовые устройства. В программу разработчика можно добавить 100 специальных устройств подготовки.

выполните следующие действия:

1.Откройте Xcode — >выберите проект — >выберите цели — > отметьте автоматическое управление подписью — >затем добавьте учетную запись разработчика apple->очистите проект->создайте проект->запустите,все работает нормально.