Подготовка приложения для тестирования на физическом устройстве или для распространения в App Store может стать кошмаром для начинающих. Тем не менее, каждый разработчик iOS должен преодолеть это препятствие в какой-то момент. В этой статье я надеюсь дать вам хорошее представление о том, как правильно подготовить приложение для тестирования на физическом устройстве.
1. iOS Developer Program
Как я упоминал в предыдущем уроке на этом занятии, если вы планируете запускать код разработки на физическом устройстве или собираетесь опубликовать приложение в App Store, вам сначала нужно зарегистрироваться в Программе для разработчиков iOS.
Для этого откройте новое окно браузера и перейдите в iOS Dev Center . Войдите в свою учетную запись разработчика Apple и нажмите ссылку « Подробнее» в разделе « Программа для разработчиков iOS » справа.
На следующей странице нажмите кнопку « Зарегистрироваться сейчас» и следуйте инструкциям, чтобы завершить регистрацию.
Имейте в виду, что принятие заявки может занять несколько дней. Apple вручную утверждает каждое приложение, что означает, что у вас не будет доступа к Программе iOS для разработчиков, пока вы не получите зеленый свет от Apple.
2. Создайте запрос на подпись сертификата
После регистрации в Программе разработчиков iOS вы заметите, что iOS Dev Center имеет немного другой интерфейс.
В разделе « Программа для разработчиков iOS » справа вы больше не видите ссылку « Подробнее», которую вы щелкнули, чтобы зарегистрироваться для участия в программе. Вместо этого вы видите ссылки на сертификаты, идентификаторы и профили , iTunes Connect , форумы разработчиков Apple и центр поддержки разработчиков . В этой статье мы будем работать в разделе « Сертификаты, идентификаторы и профили ». Нажмите на ссылку в разделе « Сертификаты, идентификаторы и профили » справа.
Процесс инициализации начинается с создания сертификата разработки iOS . Сертификат — это электронный документ, который связывает вашу цифровую идентификацию с другой информацией, такой как ваше имя, адрес электронной почты и информация о компании.
Сертификат разработки состоит из секретного закрытого ключа и общего открытого ключа. Если вы знакомы с SSL-сертификатами для защиты веб-сайта, то вы, вероятно, уже знаете, что такое сертификат и как он работает.
Xcode использует закрытый ключ сертификата для криптографической подписи двоичного файла вашего приложения. Чтобы получить сертификат разработки, нам сначала нужно создать запрос на подпись сертификата или CSR .
Вы можете создать CSR с помощью утилиты Keychain Access в OS X, которую вы можете найти в папке « Утилиты» папки « Приложения ». Откройте меню Keychain Access , выберите Certificate Assistant и выберите опцию с надписью Request a Certificate from the Certificate Authority ….
Заполните форму, указав свое имя и адрес электронной почты, с которыми вы зарегистрировали свою учетную запись разработчика Apple. Оставьте адрес электронной почты центра сертификации (адрес электронной почты CA) пустым и обязательно выберите опцию, помеченную как Сохраненная на диске, чтобы сохранить запрос на подпись сертификата в вашей системе. Оставьте флажок « Позвольте мне указывать информацию о паре ключей не установленным».
Нажмите « Продолжить» , укажите местоположение для сохранения CSR и нажмите « Сохранить» . Перейдите к указанному местоположению, чтобы убедиться, что CSR был создан. В разделе «Связка ключей» в категории « Ключи » вы можете видеть, что закрытый и открытый ключи были добавлены в вашу цепочку ключей входа.
3. Создайте сертификат разработки
Вернитесь в раздел « Сертификаты, идентификаторы и профили » в iOS Dev Center . Выберите раздел Сертификаты в столбце с надписью iOS Apps .
Нажмите кнопку «плюс» в правом верхнем углу и следуйте инструкциям по созданию сертификата разработки. В первом разделе « Разработка» выберите « Разработка приложений для iOS» и нажмите « Продолжить» .
Следующее представление расскажет вам, как создать CSR. Не стесняйтесь нажимать « Продолжить», поскольку у вас уже есть готовый к загрузке CSR.
Пришло время загрузить CSR, который мы создали ранее. Нажмите кнопку « Выбрать файл» внизу, выберите CSR и нажмите « Создать» . Это может занять несколько секунд, пока создается сертификат разработки.
Сертификат должен быть действителен в течение одного года. Нажмите кнопку « Загрузить» , чтобы загрузить сертификат на компьютер разработчика.
Найдите сертификат в своем сертификате разработки и дважды щелкните его, чтобы добавить его в цепочку для ключей входа в систему.
4. Добавление устройства
Вы не можете запустить приложение iOS на случайном устройстве. Необходимо указать, на каких устройствах должно работать ваше приложение iOS, добавив одно или несколько устройств iOS в Центр разработки iOS.
Перейдите в раздел « Сертификаты, идентификаторы и профили » центра разработки iOS , перейдите на вкладку « Устройства » в разделе « Приложения iOS » и нажмите кнопку «плюс» в правом верхнем углу. Чтобы зарегистрировать устройство, введите имя для устройства и UDID устройства. UDID — это идентификатор, который однозначно идентифицирует устройство iOS. Обратите внимание, что UDID не совпадает с серийным номером устройства.
Вы можете найти UDID устройства, подключив устройство к вашей машине и запустив Organizer Xcode. Вы можете открыть Органайзер , выбрав Органайзер в меню Окно . Перейдите на вкладку « Устройства » вверху и выберите интересующее вас устройство. Буквенно-цифровая строка из 40 символов рядом с меткой « Идентификатор» — это UDID устройства.
При первом подключении устройства iOS к вашему Mac и просмотре устройства в Organizer Xcode, вы должны увидеть кнопку с надписью Use for Development .
Когда вы нажмете эту кнопку, Xcode подключится к iOS Dev Center от вашего имени. В ходе этого процесса Xcode запросит у вас учетные данные вашей учетной записи разработчика iOS, если вы не добавили их в « Предпочтения» Xcode > «Учетные записи» . Xcode подготовит ваше устройство к разработке, загрузив профили инициализации, содержащие это устройство, подробнее об этом позже.
Суть в том, что раньше было сложно подготовить устройства к разработке. XCode сделал это намного проще, запросив у iOS Dev Center необходимые данные за кулисами. Когда устройство может использоваться для разработки, зеленый индикатор отображается справа от имени устройства в Xcode Organizer .
5. Создайте идентификатор приложения
Идентификатор приложения — это идентификатор, который однозначно идентифицирует приложение на iOS. Это очень похоже на UDID устройства, которое однозначно идентифицирует устройство. Идентификатор приложения используется операционной системой в целях безопасности и является важным компонентом служб push-уведомлений Apple и служб iCloud, в частности.
Идентификатор приложения состоит из идентификатора пакета вашего приложения с префиксом уникального начального идентификатора набора из 10 символов, сгенерированного Apple. Что такое идентификатор пакета? Вы помните, когда настраивали свое первое приложение? Несмотря на то, что я подробно не описывал идентификатор пакета, вы неявно указали идентификатор пакета для своего проекта, дав своему приложению имя и указав идентификатор компании. По умолчанию идентификатором пакета является имя вашего приложения с префиксом идентификатора компании вашего проекта. Вы можете изменить идентификатор пакета на любой, какой захотите. Рекомендуется принять соглашение об именовании обратного домена, например, com.tutsplus.my-first-application . Полный идентификатор приложения будет xxxxxxxxxx.com.tutsplus.my-first-application .
Чтобы создать новый идентификатор приложения в Центре разработки iOS, перейдите в раздел « Сертификаты, идентификаторы и профили », нажмите « Приложения iOS» и выберите идентификаторы приложений в меню слева. Чтобы создать новый идентификатор приложения, нажмите кнопку «плюс» в правом верхнем углу.
Начните с присвоения идентификатору своего идентификатора приложения, чтобы вы могли найти его позже. Оставьте поле префикса идентификатора приложения нетронутым. В разделе Суффикс идентификатора приложения введите идентификатор пакета вашего приложения. Убедитесь, что вы ввели его в раздел « Явный идентификатор приложения» .
Вы можете заменить имя приложения в идентификаторе пакета на звездочку, например, com.tutsplus. * . Это полезно, если вы намереваетесь создать набор приложений, которые должны иметь возможность общего доступа к цепочке для ключей или вообще не требовать доступа к цепочке для ключей. Звездочка или подстановочный знак должны быть последним компонентом идентификатора пакета. Этот тип идентификатора приложения является идентификатором приложения с подстановочными символами, в отличие от явного идентификатора приложения .
6. Создайте профиль обеспечения
При наличии сертификата разработки и идентификатора приложения пришло время создать профиль обеспечения для вашего приложения. Прежде чем мы начнем, было бы полезно объяснить, что такое профиль обеспечения, потому что это то, что сбивает с толку многих новых разработчиков iOS.
Цитируя документацию Apple, «профиль обеспечения — это набор ресурсов, которые уникальным образом связывают разработчиков и устройства с авторизованной командой разработчиков iOS и позволяют использовать устройство для тестирования». Другими словами, профиль обеспечения содержит информацию, необходимую операционной системе для проверки, разрешено ли запуск приложения на определенном устройстве. Это означает, что профиль обеспечения должен быть установлен на каждом устройстве, на котором должно выполняться приложение.
Это станет более понятным, если мы создадим профиль обеспечения для вашего приложения, поэтому давайте сделаем это сейчас. В разделе « Сертификаты, идентификаторы и профили » Центра разработки iOS выберите вкладку « Профили подготовки » в разделе « Приложения iOS ». Нажмите кнопку «плюс» в правом верхнем углу, чтобы создать новый профиль обеспечения. Выберите « Разработка приложений для iOS» в разделе « Разработка» и нажмите « Продолжить» .
На следующем шаге выберите идентификатор приложения, который вы создали несколько минут назад, и нажмите кнопку « Продолжить» .
Выберите сертификат разработки из списка сертификатов, чтобы связать новый профиль обеспечения с правильным сертификатом, и нажмите « Продолжить» .
Затем вам нужно выбрать устройства, которые вы хотите связать с профилем обеспечения. Помните, что только эти устройства смогут запускать ваше приложение во время разработки.
Дайте профилю обеспечения описательное имя, чтобы вы могли легко найти его позже. Нажмите « Создать» и загрузите профиль обеспечения на свой компьютер для разработки. Дважды щелкните профиль обеспечения, чтобы добавить его в XCode.
Если вы хотите добавить больше устройств в уже существующий профиль обеспечения, вы можете сделать это, отредактировав профиль обеспечения. Все, что вам нужно сделать, это загрузить новый профиль и установить его на всех устройствах, с которыми вы хотите проверить. Другими словами, вам не нужно создавать новый профиль обеспечения, если все, что вы хотите сделать, это добавить или удалить устройства.
7. Настройка проекта
Прежде чем вы сможете собрать и запустить приложение на своем устройстве, вам необходимо обновить настройки сборки цели в вашем проекте XCode.
Откройте проект Xcode, который вы создали в предыдущем уроке, и выберите проект в Навигаторе проектов слева. Выберите первый элемент в списке целей и нажмите вкладку с надписью Настройки сборки в верхней части.
Не удивляйтесь многочисленным настройкам сборки. Прокрутите список и найдите раздел « Подписывание кода» . В этом разделе найдите подраздел « Идентификация подписи кода» и настройте конфигурацию отладки в соответствии с iOS Developer . Обычно он находится под заголовком « Автоматически» .
8. Сборка и запуск
Если вы правильно выполнили эти шаги, теперь вы сможете создавать и запускать приложение на своем устройстве. Перед запуском приложения убедитесь, что вы правильно установили активную схему, выбрав свое устройство в раскрывающемся меню.
Вывод
Создание сертификатов, предоставление профилей, идентификаторов приложений и тестовых устройств, а также управление ими могут быть непростой задачей, и часто это делается для большинства разработчиков. Я надеюсь, что эта статья дала вам прочную основу.
Не стесняйтесь прочитать эту статью несколько раз, чтобы по-настоящему понять, как различные части сочетаются друг с другом. Это значительно упростит проблемы отладки, связанные с инициализацией, и я могу гарантировать, что вы столкнетесь с такими проблемами в какой-то момент своей карьеры iOS.
Кроме того, взгляните на сотни шаблонов приложений для iOS, доступных на Envato Market, чтобы увидеть, есть ли что-то, что может помочь вам в разработке iOS.