Apple Wallet не обновляется автоматически

Наконец-то я могу отправить новый измененный скомпилированный пакет. Есть одна проблема, с которой я столкнулся, чтобы увидеть новые изменения. я должен войти в свою карточку кошелька и отключить «Автоматические обновления», а затем включить. затем я вижу свою новую скомпилированную пропускную карту.

 $result = $pdo->query($query);

if($result->rowCount() > 0) {

    $myPass = $result->fetch();

    $data = $myPass['data'];
    $nameFile = 'passbook_'.time().'.pkpass';
    file_put_contents($nameFile, $data);

    $stream = function () use ($nameFile) {
        readfile($nameFile);
    };

    return $app->stream($stream, 200, array(
        'Content-Type' => 'application/vnd.apple.pkpass',
        'Content-length' => filesize($nameFile),
        'Content-Disposition' => 'attachment; filename="passbook.pkpass"',
        'Last-Modified' => gmdate('D, d M Y H:i:s T')
    ));

скомпилированный проход = $myPass['data'];.

пожалуйста, посоветуйте, что мне здесь не хватает.

2-й вопрос, как я могу показать новые обновления на экране блокировки? я думаю, что я должен отправить это, но немного запутался, где я должен добавить эту строку в «pass.json»? или я должен отправить это в push-уведомлении?

{ "key":"header", "value":"More discount 50% off", "changeMessage": "%@" }

Журналы устройств: Iphone 4 IOS 9.3.5

 `Jul  5 06:51:30 iPhone UserEventAgent[23] <Warning>: Tracking com.apple.Passbook (via activity)
Jul  5 06:51:37 iPhone SpringBoard[48] <Warning>: BSXPCMessage received error for message: Connection interrupted
Jul  5 06:51:37 iPhone assertiond[64] <Error>: assertion failed: 13G36: assertiond + 22255 [490D29F9-F790-3C02-B1F0-75F21A182589]: 0x16
Jul  5 06:51:37 iPhone Unknown[64] <Error>: 
Jul  5 06:51:37 iPhone assertiond[64] <Error>: assertion failed: 13G36: assertiond + 22255 [490D29F9-F790-3C02-B1F0-75F21A182589]: 0x16
Jul  5 06:51:37 iPhone Unknown[64] <Error>: 
Jul  5 06:51:37 iPhone SpringBoard[48] <Warning>: Application 'UIKitApplication:com.apple.mobilesafari[0x936d]' exited voluntarily.
Jul  5 06:51:37 iPhone UserEventAgent[23] <Warning>: 5194416385: id=com.apple.mobilesafari pid=172, state=0
Jul  5 06:51:55 iPhone Passbook[178] <Warning>: BTM: attaching to BTServer
Jul  5 06:51:56 iPhone ABLE[136] <Warning>: Current charge is 89.000000
Jul  5 06:52:02 iPhone locationd[69] <Warning>: PLClientLogging: log locationd withContent {
    } cannot continue due to nils!
Jul  5 06:52:02 iPhone locationd[69] <Warning>: PLClientLogging: log locationd withContent {
    } cannot continue due to nils!
Jul  5 06:53:54 iPhone SpringBoard[48] <Warning>: [MPUSystemMediaControls] Disabling lock screen media controls updates for screen turning off.
Jul  5 06:53:54 iPhone backboardd[63] <Notice>: [HID] [MT] MTSimpleHIDManager::setPropertyInternal detection mode: 3->255 
Jul  5 06:53:55 iPhone wirelessproxd[50] <Notice>: (Error) updateScanner - central is not powered on: 4
Jul  5 06:53:55 iPhone SpringBoard[48] <Warning>: _UIGraphicsDrawIntoImageContextWithOptions: cannot draw into NULL context
Jul  5 06:53:55 iPhone SpringBoard[48] <Warning>: _UIGraphicsDrawIntoImageContextWithOptions: cannot draw into NULL context
Jul  5 06:53:55 iPhone SpringBoard[48] <Warning>: _UIGraphicsDrawIntoImageContextWithOptions: cannot draw into NULL context
Jul  5 06:53:55 iPhone SpringBoard[48] <Warning>: [MPUSystemMediaControls] Updating supported commands for now playing application.
Jul  5 06:53:55 iPhone SpringBoard[48] <Warning>: HW kbd: Failed to set (null) as keyboard focus
Jul  5 06:54:00 iPhone nehelper[97] <Error>: Configuration for provider com.apple.NetworkExtension.NetworkServiceProxy does not exist (<__NSConcreteUUID 0x16d14090> D727480A-72B9-430E-BF8F-9480304FA28D) or is not enabled (0)
Jul  5 06:54:00 iPhone UserEventAgent[23] <Error>: Probe message failed
Jul  5 06:55:00 iPhone wifid[74] <Error>: WiFi:[520955700.123604]: Disable WoW requested by "apsd"
Jul  5 06:57:22 iPhone UserEventAgent[23] <Error>: Could not get event name for stream/token: com.apple.backgroundtaskagent/45: 132: Request for stale data
   `

Отчет о сбое:

{"bundleID":"com.apple.PassKit","app_name":"passd","share_with_app_devs":false,"name":"passd","app_version":"1.0","is_first_party":true,"os_version":"iPhone OS 9.3.5 (13G36)","slice_uuid":"d32v6729-2e4f-327b-9217-53b62kbb844f","bug_type":"109","build_version":"1","timestamp":"2017-07-05 06:44:05.05 -0700"}
Incident Identifier: AC0CE5BC-D198-4E5C-A9EF-979104BBA1FB
CrashReporter Key:   b68cdf2adc9e1b2b852dda7281b55628dfc2097a
Hardware Model:      iPhone4,1
Process:             passd [604]
Path:                /System/Library/Frameworks/PassKit.framework/passd
Identifier:          com.apple.PassKit
Version:             1 (1.0)
Code Type:           ARM (Native)
Parent Process:      launchd [1]

Date/Time:           2017-07-05 06:44:05.05 -0700
Launch Time:         2017-07-05 06:41:51.51 -0700
OS Version:          iOS 9.3.5 (13G36)
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Triggered by Thread:  0

Filtered syslog:
None found

Last Exception Backtrace:
(0x25cc7916 0x25462e12 0x25ccd2b0 0x25ccaedc 0x25bf6234 0x143e5a 0x13c73c 0x143ddc 0x136c60 0x2583f80e 0x2583580a 0x25843ba4 0x25c89b68 0x25c88062 0x25bd7224 0x25bd7010 0x26420040 0x2646ea48 0x104644 0x2587f86e)

Error Formulating Crash Report:
Failed while requesting activity/breadcrumb diagnostics

person M.A    schedule 30.06.2017    source источник
comment
у вас может возникнуть проблема с тестированием, если вы используете один и тот же серийный номер с разными токенами аутентификации - это длительная ошибка. Если вы используете разные серийные номера и токены аутентификации для каждого пути и вам все еще нужно переключать обновления, проверьте журналы консоли, чтобы увидеть, как изначально регистрируется проход. ChangeMessage входит в pass.json, но срабатывает только в том случае, если значение для этого ключа отличается от старого прохода, уже установленного в кошельке.   -  person PassKit    schedule 30.06.2017
comment
@Passkit Спасибо за ваш ответ. Я даю уникальные серийные номера для каждой карты и токена устройства. Единственное, что я отправляю запрос на обновление через 2 или 3 минуты, это может быть проблемой? -- Оповещение о второй проблеме Я сделал это , но не получил оповещения { "key": "memberid", "value": "", "label": "ID# 123456", "textAlignment" : "PKTextAlignmentLeft" } ], "backFields": [ { "label": "MOBILE TERMS:", "key": "info", "value" : "MOBILE TERMS ", changeMessage: "%@" } ] не могли бы вы проверить , что я делаю правильно ?   -  person M.A    schedule 30.06.2017
comment
Консоль: xxx.xxx.xxx.xxx - - [30/Jun/2017:09:34:42 -0700] "GET /push.php HTTP/1.1" 200 188 xxx.xxx.xxx.xxx - - [30/Jun/2017:09:34:43 -0700] "GET /v1/devices/af56c0d12bdbnf6kkatt3aa5c10d0dg64/registrations/‌​pass.test.com.mymobi‌​leDomain?passesUpdat‌​edSince=2017-06-30%2‌​009:23:06 HTTP/1.1" 200 68   -  person M.A    schedule 30.06.2017
comment
Журналы консоли должны быть с iPhone (через Xcode). То, что вы опубликовали, похоже на логи вашего сервера.   -  person PassKit    schedule 01.07.2017
comment
Термины «МОБИЛЬНЫЕ» должны измениться на другое значение в новом пропуске, если вы хотите вызвать сообщение об изменении.   -  person PassKit    schedule 01.07.2017
comment
Ваши журналы просто показывают, что на устройстве было получено нажатие. Нужно посмотреть, что произойдет после этого (например, как Wallet или passd обработают запрос)   -  person PassKit    schedule 04.07.2017
comment
@PassKit У меня есть вопрос, не могли бы вы ответить? пожалуйста... я сохраняю свой файл pass-card.pkpass в двоичном виде в БД, когда устройство запрашивает этот код, выполняя if($result->rowCount() > 0) { полный код выше в моем сообщении. я что-то пропустил здесь?   -  person M.A    schedule 05.07.2017
comment
Только что обновленный журнал   -  person M.A    schedule 05.07.2017
comment
ты это исправил? у тебя есть код? также знаете ли вы, можете ли вы отправить обновленный zip-файл pkpass, как вы должны были отправить по электронной почте, или просто файл .pkpass?   -  person Michael    schedule 01.09.2017
comment
Я сделал это, но я не доволен результатами, иногда он обновляется, в большинстве случаев нет.   -  person M.A    schedule 01.09.2017
comment
Похоже, у вас проблема с подписью. Я использую тот же код, что и в первый раз, создаю свой файл прохода   -  person M.A    schedule 01.09.2017