Обновление Pass для Apple Wallet - не удалось извлечь архив

Вопрос 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.

Наряду с хранением данных и проходов, а также php-страницей webserviceurl на моем сервере.

У кого-нибудь есть идея по этому поводу?

вопрос 2

Я также получаю сообщение об ошибке (ошибке) в консоли:

Setting display properties with screenSize=(375, 667) scale=2

Не знаете, почему, или если это вообще имеет значение?


person Michael    schedule 30.08.2017    source источник
comment
Возможно, это поможет github.com/immobiliare/ApnsPHP   -  person BugHunterUK    schedule 30.08.2017
comment
Здравствуйте, @Michael, не могли бы вы помочь мне с проходом, я успешно добавил пропуск в кошелек, но при обновлении прохода из данных панели администратора не отражается на проходном кошельке.   -  person Jay Mehta    schedule 25.09.2018
comment
Мы получили следующие журналы при обновлении прохода. Журнал: {logs:[[2018-09-25 11:50:09 +0530] Получить серийный номер задачи #s (для устройства 49deeaee707d67dbb44ac89480a58124, тип прохода PASSIDHERE, последнее обновление (null); с URL-адресом веб-службы http:\/\/ pass.abc.com\/admin\/mypkpass\/devices) обнаружил ошибку: ответ сервера был искажен (не удалось прочитать данные, поскольку они имеют неправильный формат.)]}   -  person Jay Mehta    schedule 25.09.2018
comment
Неверное расположение URL-адреса веб-службы или код не отвечает правильно.   -  person Michael    schedule 02.10.2018


Ответы (2)


Исправлено!

Я создал свою собственную версию генератора, как ссылка на github.

Это решило проблему.

person Michael    schedule 07.09.2017

Проблема заключается в том, как создаются файлы ZIP (pkpass). Я просмотрел код, и он использует PHP ZipArchive. Хотя сгенерированные ZIP-файлы могут быть извлечены как в Windows, так и в Linux без ошибок, сервер Apple более требователен.

Я также пробовал PclZip, и у него та же проблема.

Решение состоит в том, чтобы использовать вызов system() для архивирования файлов с помощью команды zip из командной строки. Сгенерированный таким образом ZIP-файл принимается Apple.

person Slawa    schedule 05.09.2017
comment
Дело было не в этом, но спасибо за помощь. - person Michael; 07.09.2017