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

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

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

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

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

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

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

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

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

Ключ в JSONТип данныхОписание
descriptionString.
Локализуемое
Краткое описание карты. Локализуемое.
formatVersionIntВерсия формата файла. Значение должно быть 1.
organizationNameString.
Локализуемое
Название организации, которая выдает карты.
passTypeIdentifierStringPass Type ID и кабинете разработчика.
serialNumberStringСерийный номер отдельной карты
teamIdentifierStringTeam 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 выдает довольно читаемые ошибки, поэтому можно легко понять, что именно было сделано не так.

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

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

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

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

Ключи стиля

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

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

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

Ключ в JSONТип данныхОписание
barcodes[JSON]Информация для баркода (см. ниже).
backgroundColorcolor as stringЦвет фона.(#fa32e4)
foregroundColorcolor as stringЦвет лейблов со значениями
groupingIdentifierStringОпционально для билетов на события и билетов на транспорт. Карты с одинаковым стилем ― passTypeIdentifier и groupingIdentifier ― будут группироваться
labelColorcolor as stringТекст лейблов с названиями полей
logoTextLocalizable 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» под уведомлениями.

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

Баркод

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

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

Локация

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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