【发布时间】:2013-01-25 21:19:05
【问题描述】:
如果我有一个创建通行证的应用程序并且用户将其添加到存折中,那么应用程序是否可以稍后更新该通行证的内容。
即当应用程序运行时,它可以使用新的时间触发器和新内容更新通行证,然后当触发器触发时,用户会收到通知。
或者现有的通行证只能由 APN 更新而没有别的?
【问题讨论】:
如果我有一个创建通行证的应用程序并且用户将其添加到存折中,那么应用程序是否可以稍后更新该通行证的内容。
即当应用程序运行时,它可以使用新的时间触发器和新内容更新通行证,然后当触发器触发时,用户会收到通知。
或者现有的通行证只能由 APN 更新而没有别的?
【问题讨论】:
我不确定为什么上面的答案不正确。
应用可以在推送通知的情况下更新通行证,前提是它具有 passTypeIdentifier 的权限并且知道通行证序列号。
需要在您的应用之外的服务器上创建和签名通行证,但是一旦您的应用收到新的 .pkpass 包,它可以使用 PKPassLibrary 类的 replacePassWithPass 方法更新通行证。
来自上面链接的文档。
您的应用会从您的服务器下载新的通行证并使用 replacePassWithPass:PKPassLibrary 类的方法来安装它。
【讨论】:
仅由 apn AFAIK - 它需要重新签名,以便签名对新内容有效
编辑:正如用户 PassKit 所说,当然不需要推送通知来更新通行证,但是
APN(这里:您的接入点 => 您的服务器)必须创建通行证的新数据。
【讨论】: