Создание первой передачи
В этом учебном руководстве Вы загрузите и отредактируете демонстрационную передачу, создадите его и просмотрите его в приложении Средства моделирования iOS.
Тематическое исследование: очень Простой купон
Предположим, что Вам принадлежит магазин леденца, и Вы хотите послать Вашим клиентам по электронной почте купон для свободного леденца на палочке. Вы полагаете, что большинство Ваших клиентов и Вы только проводите рекламное мероприятие, пока гигантский блок леденцов на палочке не заканчивается, таким образом, Вы не берете специального усилия препятствовать тому, чтобы клиенты использовали свой купон несколько раз. Вы создаете передачу с той же информацией, которую Вы включали бы на печатном купоне: описание предложения и некоторой информации о Вашем хранилище.
В этом учебном руководстве Вы установите свою среду для разработки передачи, подпишете одну из демонстрационных передач, и затем внесете некоторые незначительные изменения в ту передачу.
Создание и заполнение пакета передачи
Передачи создаются как пакет, содержащий a pass.json
файл, определяющий передачу и активы изображения, такие как логотип и значок.
Для создания пакета передачи для передачи сделайте следующее:
Сделайте новый каталог в папке Documents вызванным
Lollipop.pass
..pass
расширение является наиболее успешной практикой, чтобы указать, что каталог является пакетом передачи.Загрузите сопутствующий файл этой книги (ссылка около начала страницы), и найдите купон в каталоге Sample Passes.
Откройте необработанный пакет передачи и скопируйте файлы, которые он содержит к Вашему
Lollipop.pass
каталог.
Установка идентификатора типа передачи и команды ID
Каждая передача имеет идентификатор типа передачи, связанный с учетной записью разработчика. Идентификаторами типов передачи управляет в Задействованном Центре администратор команды. Для создания этой передачи необходимо запросить и сконфигурировать идентификатор типа передачи. (Вы не можете использовать идентификатор типа передачи, который уже находится в передаче, потому что это не связано с Вашей учетной записью разработчика.)
Для регистрации идентификатора типа передачи сделайте следующее:
В Сертификатах, Идентификаторах и Профилях, выбирают Identifiers.
Под Идентификаторами выберите Pass Type IDs.
Щелкните плюс (+) кнопка.
Введите описание и передайте идентификатор типа и нажмите Submit.
Для нахождения Команды ID сделайте следующее:
Откройте Keychain Access и выберите свой сертификат.
Выберите File> Get Info и найдите раздел Organizational Unit под Подробными данными. Это - Ваша Команда ID.
Идентификатор типа передачи появляется в сертификате под разделом User ID.
Отредактируйте pass.json
файл и изменение идентификатор типа передачи к идентификатору Вы просто устанавливаете и изменяете Команду ID для соответствия значений, которые Вы просто нашли.
Перечисление 1-1 , Устанавливающее идентификатор типа передачи и Команду ID
{ |
... |
"passTypeIdentifier" : "your pass type identifier", |
"teamIdentifier" : "your Team ID", |
... |
} |
Подписание и сжатие передачи
Как часть создания Вашей продуктивной среды, необходимо будет установить систему для того, чтобы автоматически подписаться и сжаться, передачи, как описано в Передачах Криптографически Подписываются и Сжаты. В целях этого учебного руководства включен очень простой инструмент для подписания передач.
Для загрузки сертификата подписания передачи сделайте следующее:
В Сертификатах, Идентификаторах и Профилях, выбирают Identifiers.
Под Идентификаторами выберите Pass Type IDs.
Выберите идентификатор типа передачи, затем нажмите Edit.
Если существует сертификат, перечисленный в соответствии с Производственными Сертификатами, щелкните по Кнопке загрузки рядом с ним.
Если нет никаких перечисленных сертификатов, не нажимают кнопку Create Certificate, то следуют инструкциям для создания сертификата подписания передачи.
Добираться signpass
инструмент, сделайте следующее:
Загрузите сопутствующий файл этой книги (ссылка около начала страницы), и найдите
signpass
проект.Откройте проект в XCode и создайте его.
Щелкните правой кнопкой по
signpass
исполнимая программа (в папке продуктов в XCode) и выбирает Show in Finder.Переместитесь
signpass
исполнимая программа к папке Documents.
Чтобы подписать и сжать передачу, используйте signpass
инструмент для подписания пакета передачи. В Терминале, выполненном следующие команды:
cd ~/Documents |
./signpass -p Lollipop.pass |
Это создает и сжатую названную передачу со знаком Lollipop.pkpass
в папке Documents. Если signpass
сбои команды, удостоверьтесь, что Вы используете свой корректный идентификатор типа передачи и проверяете что pass.json
файл содержит допустимый JSON.
Изменение предложения
Демонстрационная передача уже является купоном, но она не имеет правильных подробных данных для кондитерской. Во-первых, измените описание и название организации. Найдите следующие ключи pass.json
файл и изменение их значения:
Перечисление 1-2 , Устанавливающее описание и название организации
{ |
... |
"description" : "Coupon for a free lollipop at Example Candy Store", |
"logoText" : "Example Candy Store", |
... |
} |
Затем, передача должна описать фактическое предложение. Это требует трех уровней ключей, как показано в Перечислении 1-3. На верхнем уровне найдите coupon
ключ, указывающий, что эта передача является купоном. Его значение является словарем, описывающим купон. На втором уровне найдите primaryFields
ключ, показывающий текст на передней стороне передачи для предложения. Его значение является словарем, описывающим содержание поля. На третьем уровне ключ является строкой, однозначно определяющей поле в передаче, и значение и метка содержат текст, появляющийся на передаче. Измените их значения для описания предложения кондитерской.
Перечисление 1-3 , Описывающее предложение
{ |
... |
"description" : "Coupon for a free lollipop at Example Candy Store", |
"logoText" : "Example Candy Store", |
"coupon" : { |
"primaryFields" : [ |
{ |
"key": "offer", |
"value": "Free lollipop" |
"label": "On July 29" |
} |
] |
}, |
... |
} |
На втором уровне передачи найдите auxiliaryFields
и backFields
ключи. Удалите эти ключи и их значения.
Просмотр передачи
Самый простой способ видеть, на что передача похожа во время разработки, находится в приложении Средства моделирования iOS. Для просмотра передачи запустите Средство моделирования и перетащите Lollipop.pkpass
файл в окно Simulator. Это выводит на экран передачу и предлагает добавлять его к Сберкнижке, как показано на рисунке 1-1.
При тестировании в приложении Средства моделирования iOS ошибки регистрируются к системному журналу, который можно просмотреть с Консольным приложением. Если передача не выводит на экран или не удается добавить к Сберкнижке, проверьте журнал на описание того, что пошло не так, как надо.