Как скомпилировать приложение iOS и создать сертификат .pem

Вы здесь:
Примерное время чтения: 4 мин.

Создайте элементы, связанные с учетной записью разработчика, с которой вы собираетесь публиковать приложение
Вам необходимо создать файл CSR и сертификат распространения iOS. Тогда вы сможете использовать эти элементы для всех следующих приложений, которые вы будете публиковать в этой учетной записи.

Файл CSR

Он должен быть создан из инструмента доступа к цепочке ключей вашего компьютера. Откройте его из приложений> Утилиты> Доступ к ключам.
В меню выберите «Доступ к брелокам»> «Ассистент сертификата»> «Запросить сертификат из центра сертификации».
Как скомпилировать приложение iOS и создать сертификат .pem
В открывшемся окне введите электронную почту учетной записи разработчика (или любой другой адрес электронной почты, так как это действие не имеет никакого влияния), введите имя учетной записи разработчика и выберите «Сохранено на диск».
Как скомпилировать приложение iOS и создать сертификат .pem
Сохраните CSR на жесткий диск в папке, связанной с сертификатами вашей учетной записи.
Закройте окно.

Сертификат распространения iOS

Подключитесь по адресу https://developer.apple.com/membercenter/index.action к учетной записи разработчика.

  1. Нажмите «Сертификаты, идентификаторы и профили».
  2. Выберите раздел «Производство», который находится в главном меню «Сертификаты» в меню слева.
    Как скомпилировать приложение iOS и создать сертификат .pem
  3. Затем нажмите на «+» в правой верхней части экрана.
  4. Выберите «App Store и Ad Hoc» и нажмите «продолжить».
    Как скомпилировать приложение iOS и создать сертификат .pem
  5. Нажмите «Продолжить» еще раз.
  6. Подпишите свой сертификат распространения iOS с ранее созданным файлом CSR.
  7. Загрузите сертификат распространения iOS, который был создан.
  8. Создайте элементы, связанные с приложением, которое вы собираетесь опубликовать.

Сертификат Apple Push Services

Благодаря этому сертификату вы сможете добавлять push-уведомления, покупки в приложении и другие его сервисы. Сейчас разберемся с push-уведомлениями.

  1. Нажмите «Идентификаторы приложений» в меню «Идентификаторы» слева.
  2. Затем нажмите на «+» в правой верхней части экрана.
  3. Введите имя своего приложения и идентификатор пакета приложения.
    Как скомпилировать приложение iOS и создать сертификат .pem
  4. Перейдите ниже и выберите «Push Notifications» в списке «Службы приложений».
    Как скомпилировать приложение iOS и создать сертификат .pem
  5. Нажмите «Продолжить».
  6. Нажмите «Регистрация», а затем — «Готово».
  7. В списке найдите идентификатор приложения и нажмите на него.
  8. Нажмите «Изменить».
  9. Внизу, в разделе «Сертификат производства SSL», выберите «Создать сертификат …».
  10. Нажмите «Продолжить».
  11. Нажмите «Выбрать файл» и загрузите ранее созданный файл CSR для этой учетной записи разработчика (тот же CSR, который вы использовали для создания сертификата распространения iOS для этой учетной записи разработчика).
  12. Загрузите сертификат Apple Push Services (aps.cer), который только что был создан. Сохраните этот сертификат в папке, связанной с этим приложением на вашем компьютере.
  13. Нажмите «Готово».

Профиль Provisionning

  1. Выберите «Распространение» в разделе «Профилирование профилей» в меню слева.
  2. Затем нажмите на «+» в правой верхней части экрана.
  3. Выберите «Магазин приложений» в разделе «Распространение».
  4. Выберите идентификатор приложения и нажмите «Продолжить».
  5. Выберите сертификат распространения iOS, связанный с CSR, который вы использовали для подписи сертификата служб Apple Push, который вы создали непосредственно перед этим (очень важно использовать дистрибутив iOS, который был создан с помощью CSR, используемый для подписи aps.cer).
  6. Нажмите «Продолжить».
  7. Загрузите созданный профиль обеспечения. Сохраните этот сертификат в папке, связанной с этим приложением на вашем компьютере, и в которой содержится сертификат Apple Push Services, созданный непосредственно перед этим.

После этого необходимо скомпилировать приложения. Для этого:

  1. Загрузите исходный код iOS.
  2. Разархивируйте папку и откройте файл .xcworkspace в Xcode.

Создание сертификата .pem

 

  1. Зайдите в Keychain Access на вашем компьютере.
  2. В меню слева выберите «Сертификаты».
  3. В строке поиска в правом верхнем углу введите идентификатор пакета вашего приложения.
  4. Нажмите на стрелку слева от вашего сертификата «Apple Push Services», к нему должен быть прикреплен секретный ключ.
    Как скомпилировать приложение iOS и создать сертификат .pem
  5. Выберите закрытый ключ и сертификат.
  6. Кликните на них правой кнопкой мыши.
  7. Выберите «Экспортировать 2 элемента …».
  8. Выберите свой рабочий стол в качестве адресата (это может быть другое место, но вам нужно будет отредактировать код, который мы вам дадим после).
  9. Выберите собственный пароль.
  10. Откройте консоль терминала вашего компьютера (из приложений> Утилиты> терминал).
  11. В терминале убедитесь, что вы находитесь на своем рабочем столе (у вас должен быть «Рабочий стол», а затем ваше имя пользователя).
  12. Введите следующую команду: «Openssl pkcs12 -in Certificates.p12 -out certat.pem -nodes -clcerts».
    (Если терминал отвечает, что нет файла с именем «Certificates.p12», зайдите на свой рабочий стол и проверьте, что имя этого сертификата .p12, и введите в командной строке это имя, а не Certificateates.p12).
  13. Введите пароль, который вы использовали ранее, чтобы экспортировать свой сертификат на свой рабочий стол.
  14. На рабочем столе у вас есть два сертификата: сертификат.p12 и certat.pem.
  15. Переместите эти файлы в папку вашего приложения на вашем компьютере (с профилем настройки и aps.cer).
  16. Загрузите certat.pem на лист приложения в своем backoffice.
    Готово!

Дополнительная информация о push-уведомлениях с CMS

Чтобы отправить push-уведомления, вам нужно выбрать:

  1. Вы можете отправить уведомление для ios и android. В этом случае должен быть сертификат .pem, а статус опубликован и для iOS, и для android.
  2. Вы можете отправлять только на Android. В этом случае не должно быть сертификата .pem, а статус для ios должен быть «ожидающим».

В случае 2 не должно быть абсолютно никакого сертификата для ios. Если вы уже загрузили его, — удалите его как из ваших файлов, так и из вашей базы данных. Чтобы удалить сертификат .pem, который вы уже загрузили, сначала зайдите в свою базу данных, в таблицу «push_certificate», найдите строку в этой таблице с «идентификатором приложения», для которого вы хотите удалить сертификат .pem. Вы получите имя сертификата .pem, оно будет похоже на «cert_55c311wqce5e2.pem». Скопируйте это имя файла. Удалите эту строку в базе данных (не удаляйте таблицу! Только строку, содержащую этот сертификат .pem, относящийся к приложению). Затем зайдите в свои файлы с файловым менеджером или с Filezilla, зайдите в var / apps / iphone и проверьте наличие строки, которую вы только что скопировали. Удалите файл.

Создание сертификата .pem

  1. Все сертификаты связаны друг с другом, поэтому сертификат Apple Push Services должен быть подписан с CSR, используемым для создания сертификата распространения iOS и для создания профиля обеспечения. Это означает, что, если вы измените один из этих элементов, ваше приложение не сможет отправить push. Например, если вы уже создали сертификат .pem и хотите его создать повторно, вы подписываете его с другим CSR, который используется для создания сертификата распространения iOS. После этого вам необходимо будет отредактировать профиль обеспечения и связать его с правильным распределением iOS (тот, который создается с помощью CSR), а затем вам нужно будет отправить обновление своего приложения в App Store и ждать, пока Apple примет ваш приложение.
  2. Ваш сертификат .pem должен содержать 4 раздела:
  • friendlyName: Apple Push Services;
  • friendlyName: Распределение iPhone;
  • два раздела о ключах (с «Атрибутами ключа; без атрибутов»).

Если ваш .pem не содержит эти разделы, это означает, что вы что-то пропустили. В таком случае он просто не будет исправно работать.

Эта статья была Вам полезна?
Плохо! 1
Авторизация
*
*
Войти с помощью: 
Регистрация
*
*
*
Пароль не введен
Войти с помощью: 
Генерация пароля