Какие дисконтные карты можно добавить в wallet

Использование бесконтактных пропусков и студенческих билетов

  1. Откройте программу Apple Watch на iPhone.

  2. Выберите «Мои часы» {amp}gt; «Wallet и Apple Pay».

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

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

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

Дополнительную информацию о бесконтактных пропусках и студенческих билетах см. в Руководстве пользователя iPhone.

Обязательные поля

Ключ в JSON Тип данных Описание
description String.
Локализуемое
Краткое описание карты. Локализуемое.
formatVersion Int Версия формата файла. Значение должно быть 1.
organizationName String.
Локализуемое
Название организации, которая выдает карты.
passTypeIdentifier String Pass Type ID и кабинете разработчика.
serialNumber String Серийный номер отдельной карты
teamIdentifier String Team ID команды разработчика

Добавление карты

Чтобы добавить билет или пропуск, выполните одно из следующих действий:

  • Следуйте инструкциям в письме, которое прислала Вам компания, выдавшая билет или пропуск.

  • Откройте программу этой компании.

  • Коснитесь «Добавить» в уведомлении.

guard let passPath = Bundle.main.path(forResource: "wallet", ofType: "pkpass") else { return }
        let error: ErrorPointer = ErrorPointer(nilLiteral: ())
        guard let passData = NSData(contentsOfFile: passPath) else { return }
        let pass = PKPass(data: passData as Data, error: error)

        let passLibrary = PKPassLibrary()
        passLibrary.addPasses([pass]) { (status) in
            print(passLibrary.containsPass(pass))

        }

Однако, опять же, чаще .pkpass файл надо будет скачивать с вашего сервера.Стоит отметить, что PassKit выдает довольно читаемые ошибки, поэтому можно легко понять, что именно было сделано не так.

Читайте ещё про NFC:  Как вывести деньги с Киви без комиссии: где можно снять и обналичить на карту

Использование бесконтактных пропусков и студенческих билетов

На Apple Watch можно использовать самые разные билеты.

  • Если на экране Apple Watch появилось уведомление с информацией о билете. Коснитесь уведомления, чтобы открыть билет. Возможно, нужно будет прокрутить экран, чтобы найти штрихкод.

  • Если у Вас билет со штрихкодом. Откройте программу Wallet  на Apple Watch, выберите билет и предъявите штрихкод для сканирования.

Ключи стиля

Ключ в JSON Тип данных Описание
primaryFields [JSON] Основная информация о карте.
secondaryFields [JSON] Второстепенная информация.
auxiliaryFields [JSON] Поля для дополнительной информации. Опциональное
headerFields [JSON] Заголовок карты. Отображается даже в том случае, когда карты видны списком.
auxiliaryFields [JSON] Основная информация о карте.
transitType String Тип транспорта для карт-билетов. Может принимать следующие значения:
PKTransitTypeAir,
PKTransitTypeBoat,
PKTransitTypeBu`,
PKTransitTypeGeneric,
`PKTransitTypeTrain`.
backFields [JSON] Массив полей, отвечающий за обратную сторону карты
    "key"   : "value1",
    "label" : "value2",
    "value" : "value3"

Значение по ключу value может быть как числовым, так и строковым. Однако currencyCode вместе со строковым значением использовать не получится. Что касается auxiliaryFields и secondaryFields, их может быть несколько, и стоит следить за длиной строк, которые в них используются.

Ключи визуального оформления

Ключ в JSON Тип данных Описание
barcodes [JSON] Информация для баркода (см. ниже).
backgroundColor color as string Цвет фона.(#fa32e4)
foregroundColor color as string Цвет лейблов со значениями
groupingIdentifier String Опционально для билетов на события и билетов на транспорт. Карты с одинаковым стилем ― passTypeIdentifier и groupingIdentifier ― будут группироваться
labelColor color as string Текст лейблов с названиями полей
logoText Localizable string Текст, отображаемый рядом с логотипом

Получение информации о добавленных картах

Чтобы получить информацию о картах, имеющихся в Wallet и относящихся к вашему приложению, необходимо обратиться к объекту PKPassLibrary.

let passLibrary = PKPassLibrary()
let passes = passLibrary.passes()

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

Откройте программу Wallet на iPhone и перетяните билеты, чтобы расставить их в нужном порядке. Билеты отображаются в новом порядке и на Apple Watch.

  1. Откройте программу Apple Watch на iPhone.

  2. Коснитесь «Мои часы» {amp}gt; «Wallet и Apple Pay», затем коснитесь «Повтор iPhone» под уведомлениями.

Читайте ещё про NFC:  Xiaomi Pay или Mi Pay для Android — настройка бесконтактной оплаты

При изменении билета — например, при смене выхода на посадку для Вашего посадочного талона — билет будет обновлен и на Apple Watch.

Баркод

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

Ключ в JSON Тип данных Описание
altText String Опциональный текст, отображаемый рядом с баркодом в том случае, если баркод не считывается.
format String Формат баркода. Может принимать значения: PKBarcodeFormatQR,
PKBarcodeFormatPDF417,
PKBarcodeFormatAztec,
PKBarcodeFormatCode128
message String Код или номер карты, зашифрованный в баркод.
messageEncoding String Кодировка сообщения. Обычно iso-8859-1

Локация

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

Ключ в JSON Тип данных Описание
altiture String Опциональный текст, отображаемый рядом с баркодом в том случае, если баркод не считывается.
latitude Долгота Широта
longtitude Double Широта
relevantText String Опциональный текст, который отображается на экране блокировки в тот момент, когда пользователь входит в радиус действия карты.

Удаление использованных билетов

  1. Откройте программу Wallet на iPhone.

  2. Коснитесь билета, затем коснитесь кнопки «Еще».

  3. Коснитесь «Удалить карту».

Билет будет удален с iPhone и Apple Watch.

Структура карты

Что же представляет собой карта с точки зрения разработчика? Карта – это архив с расширением .pkpass. Он содержит в себе все данные, необходиимые для отображения и работы карты. Содержимое архива – в таблице ниже.

Файл Назначение
background.png Фоновая картинка для карты.
footer.png Картинка рядом со штрихкодом
icon.png Иконка для уведомлений и писем
logo.png Логотип карточки. Отображается слева сверху
manifest.json Реестр всех включанымх файлов
signature PKCS7 подпись
pass.json Внешний вид и информация на карте
strip.png Картинка, находящаяся сзади основного описания карточки
thumbnail.png Дополнительная картинка (уточнить)
Читайте ещё про NFC:  Nfc тэг

Существуют следующие типы карт:

  • Посадочный билет: на самолет или поезд. Обычно купон работает на одну поездку;
  • Купон: для купонов и специальных предложений;
  • Билет на событие: может работать как для одного события, так и для целого сезона;
  • Скидочная карта: карты лояльности, скидочные или подарочные карты;
  • Карта общего вида: если ничего из вышеперечисленного не подходит под ваш случай: например, карта для поездок на метро или пропуск в спортзал.

Рассмотрим схематично внешний вид разных карт. Картинки лучше называть так, как это указано в таблице выше.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector