我有一个使用第三方库生成条形码的应用程序。此条形码不是静态的,在应用程序中每隔30秒左右就会更改一次。
我知道正确的方法是从服务器获取一个签名的pkpass文件,并将其提供给存折,然后使用APN或iOS应用程序中的某种触发器来获取新的条形码。但是由于某些原因。。。其中一些目前是不可行的。。。
所以。。。
理想情况下,我希望能够允许用户每次选择我的通行证时,我都能从应用程序中为他们提供动态生成的条形码(或pkpass文件)。
这样的方式可能吗?我知道这并不符合"最佳实践"。。。
正确的方法是从服务器获取一个签名的pkpass文件,提供给存折
这不仅仅是正确的方式,这是唯一的方式!通行证无法在设备上动态生成和签名,因为这需要将您的通行证类型ID证书嵌入到您的应用程序中。
此外,如果您以这样的频率生成和替换通行证,Passbook应用程序将限制您的通行证,以保留用户的电池和带宽。这将阻止您的通行证更新。
一个丑陋的黑客攻击是教育用户使用通行证背面的"拉取刷新"功能,然后根据用户请求提供新的通行证,但这需要您的服务器、应用程序和通行证之间一定程度的同步。
实际上,如果条形码每30秒左右更改一次,那么在用户能够取回通行证并出示通行证进行扫描之前,条形码就有可能过期。也许有一种更好的方法可以在不频繁旋转条形码的情况下实现您想要的目标?