Чтение онлайн

на главную - закладки

Жанры

iOS. Приемы программирования

Нахавандипур Вандад

Шрифт:

См. также

Раздел 18.2.

Глава 19. Фреймворк Pass Kit

19.0. Введение

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

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

На рис. 19.1 показано, как на устройстве с iOS выглядит обычный (бесплатный) железнодорожный билет, отображенный в Passbook.

Рис. 19.1. Железнодорожный билет, представленный в виде талона в приложении Passbook на устройстве с iOS

Приложения iOS для взаимодействия с такими бесплатными билетами могут использовать также фреймворк Passbook. Вернемся к примеру с кофейней. Если мы пишем мобильное приложение для этой кофейни, то можем предусмотреть в нем и такую возможность: посетитель добавляет к дисконтной карточке некоторую сумму, что позволяет ему не только выпить кофе, но и воспользоваться Wi-Fi-соединением. Итак, когда пользователь открывает такое приложение, он замечает в базе данных Passbook клубный талон, полученный именно в этой кофейне. Пользователь может добавить некоторую сумму к этому талону прямо на устройстве, а затем сообщить барриста, что внес плату за пользование сетью через приложение, где имеется виртуальный клубный талон.

Pass Kit — это цифровое решение от Apple для осуществления именно таких транзакций. Итак, разберемся с терминологией, а затем изучим эту тему подробнее.

• Pass Kit. Фреймворк Pass Kit от Apple позволяет разработчикам доставлять виртуальные скидочные талоны, снабженные цифровой подписью, на совместимые устройства с операционной системой iOS 6 и выше.

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

Итак, мы (разработчики) будем пользоваться Pass Kit для создания талонов с цифровой подписью и доставки их нашим пользователям. Пользователям потребуется взаимодействовать с талонами, которые мы для них создаем, для этого они будут использовать приложение Passbook, установленное на устройстве. Итак, мы сможем выдавать пользователям в цифровой форме различные талоны, проездные билеты, скидочные купоны, дисконтные и клубные карты и т. д. Не придется носить целую стопку карточек в кошельке. Весь этот контент можно хранить в одном месте — в приложении Passbook для iOS.

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

1. Разработчик создает сертификат и соответствующий ему закрытый ключ. Это делается на портале инициализации Apple (Apple Provisioning Portal).

2. Затем разработчик

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

3. Разработчик подписывает созданный талон с применением того сертификата, который был создан на первом этапе.

4. Разработчик тем или иным способом доставляет талон пользователю.

5. Пользователь увидит талон и сможет добавить его на свое устройство.

6. Как только талон окажется на пользовательском устройстве, Passbook сохранит его для последующего использования до тех пор, пока пользователь не решит удалить талон.

Конечно, после прочтения этого списка у вас могла еще не сложиться целостная картина. На рис. 19.2 все показано наглядно.

Рис. 19.2. Создание и распространение среди пользователей талонов с цифровой подписью в операционных системах iOS 6 и выше

Все детали процесса будут подробно описаны в разделах этой главы. Некоторые технологические аспекты Pass Kit, связанные с тем, как обеспечивать актуальность ваших талонов и отсылать уведомления с сервера, требуют определенных знаний о серверном программировании. Ради упрощения материала мы не будем в этой главе останавливаться на данных аспектах, а поговорим преимущественно о создании талонов. Научившись создавать талоны, вы сможете распространять их разными способами. Два из таких способов объяснены в этой главе. Те детали, которые связаны не с системой iOS непосредственно, а с серверной разработкой, в этой главе не рассматриваются.

19.1. Создание сертификатов Pass Kit

Постановка задачи

Требуется распространять между пользователей талоны с цифровой подписью. Для этого первым делом нужно создать цифровые сертификаты для подписывания ваших талонов.

Решение

Создавайте цифровые сертификаты на портале инициализации iOS.

Обсуждение

Как было объяснено во введении к этой главе, для распространения талонов между пользователями эти талоны требуется снабжать цифровыми подписями. А перед этим нужно получить в Apple сертификат, который позволил бы уникально связать все талоны с вашей учетной записью разработчика. Таким образом Apple отличает «настоящие» талоны от «ненастоящих».

При создании сертификата выполните следующие шаги.

1. В браузере откройте центр разработки для iOS (iOS Dev Center). Не буду ставить здесь ссылку, так как со временем она может измениться. Просто введите такой запрос в поисковик — и он выдаст вам нужный сайт в мгновение ока.

2. Если вы еще не вошли на сайт под вашей учетной записью, сделайте это.

3. Оказавшись в системе, перейдите на страницу Certificates, Identifiers & Profiles (Сертификаты, идентификаторы, профили).

4. Перейдите на страницу Identifiers (Идентификаторы) и далее на страницу Pass Type ID (ID типа талона). Соответствующий раздел находится в левой части экрана.

5. Когда вы окажетесь на нужной странице, она, возможно, еще будет пуста. Найдите и нажмите экранную кнопку +.

Поделиться:
Популярные книги

Третий. Том 6

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
фантастика: прочее
попаданцы
5.00
рейтинг книги
Третий. Том 6

Изменяющий-Механик. Компиляция. Книги 1-18

Усманов Хайдарали
Собрание сочинений
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Изменяющий-Механик. Компиляция. Книги 1-18

Тринадцатый VIII

NikL
8. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый VIII

Геном хищника. Книга пятая

Гарцевич Евгений Александрович
5. Я - Легенда!
Фантастика:
рпг
фэнтези
попаданцы
6.00
рейтинг книги
Геном хищника. Книга пятая

Медиум

Злобин Михаил
1. О чем молчат могилы
Фантастика:
фэнтези
7.90
рейтинг книги
Медиум

Война

Валериев Игорь
7. Ермак
Фантастика:
боевая фантастика
альтернативная история
5.25
рейтинг книги
Война

Артефактор. Шаг в неизвестность

Седых Александр Иванович
1. Артефактор
Фантастика:
фэнтези
боевая фантастика
попаданцы
6.12
рейтинг книги
Артефактор. Шаг в неизвестность

Воин

Бубела Олег Николаевич
2. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.25
рейтинг книги
Воин

Ратник

Ланцов Михаил Алексеевич
3. Помещик
Фантастика:
альтернативная история
7.11
рейтинг книги
Ратник

Гримуар темного лорда IV

Грехов Тимофей
4. Гримуар темного лорда
Фантастика:
фэнтези
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Гримуар темного лорда IV

Наследие Маозари 5

Панежин Евгений
5. Наследие Маозари
Фантастика:
фэнтези
юмористическое фэнтези
5.00
рейтинг книги
Наследие Маозари 5

Мы – Гордые часть 8

Машуков Тимур
8. Стальные яйца
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Мы – Гордые часть 8

Боярышня Евдокия

Меллер Юлия Викторовна
3. Боярышня
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Боярышня Евдокия

Древесный маг Орловского княжества 6

Павлов Игорь Васильевич
6. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 6