在第三方应用程序中显示Passbook中的现有通行证?

时间:2013-01-30 01:23:58

标签: iphone ios xcode passbook

我正在开发一款应用,并提出了一个问题。我的应用程序即时创建通行证,可以选择将它们添加到您自己的Passbook,或者将它们通过电子邮件发送给其他用户,以便他们可以将其添加到他们的存折上。我想添加一个选项,用户可以单击一个按钮,看看是否有任何带有该应用程序PassID的Passes,并显示它。应用程序是否可以检查现有通行证的存折?

3 个答案:

答案 0 :(得分:1)

请仔细阅读以下网址,以便更好地了解存折:

Passbook FAQ

Beginning Passbook in iOS 6: Part 1/2

Beginning Passbook in iOS 6: Part 2/2

答案 1 :(得分:1)

只要您的应用具有特定passTypeIdentifier的权利,则:

  

使用passes method of the PKPassLibrary class获取所有通行证   您的应用有权访问。通行证返回   任意顺序。如果您的应用显示通行证列表,则应进行排序   它们以某种有意义的方式,例如按日期。

取自Passbook Programming Guide.

答案 2 :(得分:0)

我要做的是检查传递是否与passWithPassTypeIdentifier:serialNumber:一起存在,然后如果用户愿意,可以使用openURL打开它。

我通过传递循环编写一个快速调试示例:

//get all passes
let passes = PKPassLibrary.init().passes();

//loop is not the best prefer passWithPassTypeIdentifier:serialNumber:
//but it is usefull for debuging
for pass in passes {
  //1) test the pass you want to
  //2) if found, prompt user if they want to open this pass
  //3) if yes, open PassBook with the following command :
  UIApplication.sharedApplication().openURL(pass.passURL)
}