【问题标题】:Updating Pass for Apple Wallet - Could not extract archive更新 Apple 钱包的通行证 - 无法提取存档
【发布时间】:2018-02-08 14:44:25
【问题描述】:

问题 1

我正在尝试为 Apple 通行证设置服务器端,以便更新它们。我目前正在生成签名的压缩通行证,它还使用设备令牌 /id 等注册以更新我的表格。

通行证不会随着我生成的新通行证而更新(相同的序列号、身份验证令牌 - 不同的消息/图像)

在控制台中我收到此错误(错误):

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

不知道为什么,或者这是否重要?

【问题讨论】:

  • 也许这会有所帮助github.com/immobiliare/ApnsPHP
  • 您好@Michael,请您帮我办理通行证,我已成功在钱包中添加通行证,但从管理面板数据更新通行证时不会反映在通行证钱包上。
  • 我们在更新通行证时收到了以下日志。日志:{"logs":["[2018-09-25 11:50:09 +0530] 获取序列号任务(对于设备 49deeaee707d67dbb44ac89480a58124,传递类型 PASSIDHERE,最后更新(null);使用 Web 服务 url http:\ /\/pass.abc.com\/admin\/mypkpass\/devices) 遇到错误:服务器响应格式错误(无法读取数据,因为它的格式不正确。)"]}
  • Web 服务 url 位置错误,或者代码没有正确响应。

标签: php ios wallet passkit


【解决方案1】:

问题在于 ZIP (pkpass) 文件的生成方式。我查看了代码,它使用的是 PHP 的 ZipArchive。虽然生成的 ZIP 文件在 Windows 和 Linux 上都可以毫无错误地解压,但 Apple 服务器更加挑剔。

我也试过 PclZip,也有同样的问题。

解决方案是使用命令行zip 命令使用system() 调用压缩文件。以这种方式生成的 ZIP 文件被 Apple 接受。

【讨论】:

  • 这不是问题,但感谢您的帮助。
【解决方案2】:

已修复!

我创建了自己的生成器版本,例如 github 链接。

这解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-12
    • 1970-01-01
    • 2023-01-20
    相关资源
    最近更新 更多