更新 Apple Wallet 的通行证 - 无法提取存档
Updating Pass for Apple Wallet - Could not extract archive
问题 1
我正在尝试为 Apple 通行证设置服务器端,以便更新它们。我目前正在生成签名的压缩通行证,它也注册更新我的表,使用设备令牌 /id 等
通行证不会更新为我生成的新通行证(相同的序列号,身份验证令牌 - 不同 message/image)
在控制台中我收到此错误(故障):
BOM could not extract archive : Couldn't read PKZIP signature
Received invalid pass data (The pass cannot be read because it isn\U2019t valid
我正在使用 https://github.com/tschoffelen/PHP-PKPass
连同存储数据和通行证,以及我服务器上的 webserviceurl php 页面。
有人对此有想法吗?
问题 2
我也在控制台中收到错误(故障):
Setting display properties with screenSize=(375, 667) scale=2
不确定为什么,或者这是否重要?
问题在于生成 ZIP (pkpass) 文件的方式。我查看了代码,发现它使用的是 PHP 的 ZipArchive。虽然生成的 ZIP 文件在 Windows 和 Linux 上都可以无误地解压,但 Apple 服务器比较挑剔。
我也试过 PclZip,它也有同样的问题。
解决方案是通过命令行 zip
命令调用 system() 来压缩文件。这样生成的ZIP文件被Apple接受了。
已修复!
我创建了自己的生成器版本,例如 github link。
这解决了问题。
问题 1
我正在尝试为 Apple 通行证设置服务器端,以便更新它们。我目前正在生成签名的压缩通行证,它也注册更新我的表,使用设备令牌 /id 等
通行证不会更新为我生成的新通行证(相同的序列号,身份验证令牌 - 不同 message/image)
在控制台中我收到此错误(故障):
BOM could not extract archive : Couldn't read PKZIP signature
Received invalid pass data (The pass cannot be read because it isn\U2019t valid
我正在使用 https://github.com/tschoffelen/PHP-PKPass
连同存储数据和通行证,以及我服务器上的 webserviceurl php 页面。
有人对此有想法吗?
问题 2
我也在控制台中收到错误(故障):
Setting display properties with screenSize=(375, 667) scale=2
不确定为什么,或者这是否重要?
问题在于生成 ZIP (pkpass) 文件的方式。我查看了代码,发现它使用的是 PHP 的 ZipArchive。虽然生成的 ZIP 文件在 Windows 和 Linux 上都可以无误地解压,但 Apple 服务器比较挑剔。
我也试过 PclZip,它也有同样的问题。
解决方案是通过命令行 zip
命令调用 system() 来压缩文件。这样生成的ZIP文件被Apple接受了。
已修复!
我创建了自己的生成器版本,例如 github link。
这解决了问题。