【问题标题】:Passbook passes can not be removed by app应用程序无法删除存折通行证
【发布时间】:2013-02-06 13:04:35
【问题描述】:

我已经以正常方式实现了 Passbook,它在开发和测试期间完美运行。但是在 AppStore 中提供的应用只能创建和添加一个通行证,而不能删除之前创建的通行证。

以下是对在哪个开发阶段起作用的简要概述:

                  Simulator     Ad-Hoc Build     AppStore-Build
Creation of Pass       X              X                  X 
Updating               X              X                  X      
Removing               X              X                  -

这意味着在每个步骤中都可以创建、更新和删除通行证,但在最终的 AppStore-Build 中我无法删除通行证。

我发现请求 [PKPassLibrary passWithPassTypeIdentifier:serialnumber:] 在尝试删除通行证之前返回 nil。但是在尝试更新通行证时,相同的方法会返回有效的通行证。

有没有人经历过类似的事情?

【问题讨论】:

    标签: ios passbook


    【解决方案1】:

    您是否确保已将 passbook 功能添加到您的应用,并且已将 passbook 添加到开发门户中的应用 ID?在添加功能之前,我发现了同样的事情。现在可以正常使用了。

    【讨论】:

      【解决方案2】:

      您无法使用您的应用程序从 Passbook 中删除通行证。在用户将 Pass 添加到 Passbook 后,它就不再是“您的”了。您可以发送推送通知,说明 Pass 不再有效 - 但您无法远程或通过应用程序将其删除。

      【讨论】:

      • 以及为什么有对应的方法:PKPassLibrary removePass:
      • 这是 Passbook 编程指南的摘录:删除通行证 使用 PKPassLibrary 类的 removePass: 方法删除通行证。请记住,通行证属于用户,而不是您的应用程序。通行证移除应仅在响应用户直接操作时进行。未经用户同意,切勿删除通行证,即使通行证已过期或过期。
      • 是的,这意味着您作为开发人员必须确保在用户不知情的情况下不会删除任何通行证。这意味着不是不可能的(如果不可能,为什么不将“removePass:”方法设为私有)。在我的情况下,用户按下了“取消预订”按钮,相应的通行证应该被删除。
      猜你喜欢
      • 1970-01-01
      • 2015-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多