Как правильно использовать «openParentApplication» и «handleWatchKitExtensionRequest», чтобы вызывался «reply ()»?

Ситуация: я используюopenParentApplication в приложении Watch позвонитьhandleWatchKitExtensionRequest в основном приложении. Это хорошо работает в симуляторе, а также на реальных устройствах (Apple Watch и iPhone), когда приложение iPhone активно / открыто.

Проблема: Когда я запускаю его на реальных устройствах (Apple Watch и iPhone),handleWatchKitExtensionRequest не возвращает данныеopenParentApplication когда основное приложение iPhone не активно / открыто.

Код в InterfaceController.m в расширении WatchKit:

NSDictionary *requst = @{ @"request" : @"getData" };
[InterfaceController openParentApplication:requst
                                     reply:^( NSDictionary *replyInfo, NSError *error ) {
                                        // do something with the returned info
                                     }];

Код в приложении делегата основного приложения на iPhone:

- (void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void ( ^)( NSDictionary * ))reply
{
  if ( [[userInfo objectForKey:@"request"] isEqualToString:@"getData"] )
  {
    // get data
    // ...
    reply( data );
  }
}

Ответы на вопрос(1)

Ваш ответ на вопрос