Распространение пропусков Passkit

Сейчас я читаю: https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/PassKit_PG/Updating.html#//apple_ref/doc/uid/TP40012195-CH5-SW1

В нем говорится, что устройство регистрируется для получения push-уведомлений для пропусков, но это происходит только ПОСЛЕ первоначальной установки пропуска (и это происходит автоматически AppleWallet).

Мой вопрос: как я могу дать пользователю начальный индивидуальный пропуск? Например: пользователь открывает мое приложение, нажимает кнопку «Добавить пропуск в кошелек». Должен ли он генерировать проход на стороне сервера, специфичный для этого пользователя, и устанавливать его ИЛИ должен ли он иметь локальный проход с общими полями, установить его, и кошелек автоматически загрузит последний проход?

Я спрашиваю обо всем этом, потому что в справочнике по серверам Apple (написанном на Ruby) у них есть:

  ################
  # FOR DEVELOPMENT PURPOSES ONLY
  # This endpoint is to allow developers to download a pass.
  # 
  # NOTE: This endpoint is not part of the offical API and does not implement
  # authentication/authorization controls and should only be used for development.
  # Please protect your user's data.
  #

  get "/pass.pkpass" do
    redirect "/sample.pkpass"
  end

  get "/:serial_number.pkpass" do
    # Retrieve pass file
    pass_output_path = File.dirname(File.expand_path(__FILE__)) + "/data/passes/#{params[:serial_number]}.pkpass"

    # Send the pass file
    send_file(pass_output_path, :type => :pkpass)
  end

  ###
  # End of development only endpoint.
  ###############

так что кажется, что вы не должны загружать пропуски на устройство, кроме как при регистрации? или я неправильно читаю?


person Brandon    schedule 19.02.2017    source источник


Ответы (1)


Если ваш сервер уже предоставляет пакеты Pass, лучше всего это сделать с помощью PKPass(data:error:)< /a> где data — это файл Pass, загруженный в ваше собственное приложение. Таким образом, вы централизуете его создание только в одном месте, сводя к минимуму возможную несоответствие информации.

После этого вы можете установить Пассы на устройство двумя способами:

person Igor Camilo    schedule 19.02.2017