分发通行证通行证



我目前正在阅读:https://developer.apple.com/library/content/content/documentation/userexperience/userexperience conceptual/conceptual/passkit_pg/updating.html#/TP40012195-CH5-SW1

它说通知通知的设备寄存器,但这仅在通行证最初安装后才发生(并且它是由AppleWallet自动发生的)。

我的问题是,如何给用户初始自定义通行证?例如:用户打开我的应用程序,点击"添加到钱包"按钮。它应该在该用户特定的服务器端生成通行证并安装它,或者应该在带有通用字段的本地通行证上安装,然后将其安装,钱包将自动下载最新的通行证?

我之所

  ################
  # 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.
  ###############

因此,除了注册电话中,您似乎不应该下载到设备上的通行证吗?还是我读错了?

如果您的服务器已经提供了通行证,则最好的方法是使用PKPass(data:error:),其中data是您自己的应用程序中下载的通行证文件。这样,您将其创建仅在一个地方集中,从而最大程度地减少了可能的不匹配信息。

之后,您可以使用两种方法在设备上安装通行证:

  • PKAddPassesViewController(passes:)如果要向用户提供视觉反馈,或者
  • PKPassLibrary.addPasses(_:withCompletionHandler:)如果要自动安装它们。

相关内容

  • 没有找到相关文章