2015-08-17 2 views
0

Я знаю, что это не возможно ...:смотреть OS 2.0 Beta: Не Получать уведомления

  • ... расписание уведомлений прямо из Дозора, а не часы должен доставить информацию в приложение IOS, которая заплатит его;
  • ... решить, где показать уведомление. iOS решает это вместо вас;

Имея это в виду, я использую функцию WCSession::sendMessage для отправки словаря со всей информацией, которую мое приложение iOS должно запланировать nofitication. Когда вы делаете это с помощью симулятора, он работает красиво, но когда вы делаете это на реальном устройстве, он не работает, и я никогда не получаю уведомление нигде.

Любая идея, почему мои настоящие устройства (iOS9 iPhone 5c + Watch os 2.0 Beta 5), ​​похоже, не хотят планировать/запускать уведомления?

Насколько я понял, он должен показать уведомление на часах, если iphone заблокирован, но на моем симуляторе он всегда делает это на iPhone, даже если он заблокирован.

Edit:

После внушения, я проверил отставание устройства с помощью XCode и это то, что я вижу, появляясь в этом отставании, когда часы пытается подключиться к iPhone:

Aug 21 11:25:16 glendcs-iPhone apsd[100] <Notice>: (Note) WatchKit: SPDeviceConnection, createXPCConnection, invalidationHandler

Aug 21 11:25:16 glendcs-iPhone apsd[100] <Notice>: (Error) WatchKit: -[SPDeviceConnection activeComplicationsWithCompletion:] - error: Error Domain=NSCocoaErrorDomain Code=4099 "The connection to service named com.apple.companionappd was invalidated from this process." UserInfo={NSDebugDescription=The connection to service named com.apple.companionappd was invalidated from this process.}

Aug 21 11:25:16 glendcs-iPhone companionappd[113] <Notice>: (Error) WatchKit: <SPCompanionAppServer.m -[SPCompanionAppServer listener:shouldAcceptNewConnection:]:763> process 100 is not entitled, so rejecting connection

+0

Вы видите, как ваше приложение iOS запускается в ответ на сообщение, отправляемое на часы? – ccjensen

+0

Нет, но в соответствии с [документацией] (https://developer.apple.com/library/prerelease/ios/documentation/WatchConnectivity/Reference/WCSession_class/index.html#//apple_ref/occ/instm/WCSession/sendMessage : replyHandler: errorHandler :) это происходит в фоновом режиме, если он должен разбудить его, поэтому я не думаю, что я должен его запустить? – GlenDC

+0

Да, я не имел в виду «запуск, как если бы пользователь запустил его»; Я имел в виду, что фон запущен. Вы можете проверить, происходит ли это, добавляя журналы и контролируя консольный журнал устройства в Xcode или присоединяясь к процессу, прежде чем он начнет работать в фоновом режиме (Xcode будет ждать подключения, как только процесс запускается правильным именем) – ccjensen

ответ

0

Я решил это сам. По-видимому, проблема заключалась в том, что бета-версии iOS9 и Watch OS 2 больше не совпадают. Я обновил свою iOS некоторое время назад до Beta 5, но забыл делать WatchOS, так как я не привык к этому процессу. После синхронизации бета-версий сегодня связь между iOS и WatchOS была гладкой :)

И впервые я смог правильно отладить от XCode на часах!

Смежные вопросы