handleWatchKitExtensionRequest未被调用

clo*_*man 6 ios watchkit

我正在尝试从watchkit应用程序启动父ios应用程序.我正在使用网址方案来启动应用程序.但它似乎

-(void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void (^)(NSDictionary *))reply 
Run Code Online (Sandbox Code Playgroud)

被称为.看起来像手表应用程序确实在背景中启动应用程序.但是,父应用程序不处理watchkit请求.我在一个新项目中尝试了我的方法,它完美无缺.有什么事我需要注意吗?

我已经尝试调试>附加到进程> myapp并在handleWatchKitExtensionRequest方法中放置一个断点来确认它是否被调用并且没有被调用.

这是进度,我在监视应用程序中单击按钮时调用openParentApplication.

@IBAction func viewOniPhoneAction() {


    let userInfo: [NSObject : AnyObject] = [
        "userID" : user.userID
    ]


    WKInterfaceController.openParentApplication(userInfo, reply: { (userInfo : [NSObject : AnyObject]!, error : NSError!) -> Void in

    })

}
Run Code Online (Sandbox Code Playgroud)

这是我的应用程序删除

- (void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void(^)(NSDictionary *replyInfo))reply
{
NSDictionary *replyDict = @{@"response": @"done"};
reply(replyDict);
}
Run Code Online (Sandbox Code Playgroud)

我试着reply()handleWatchKitExtensionRequest,但我得到的回复块这个错误手表应用

Error Error Domain=com.apple.watchkit.errors Code=2 "The UIApplicationDelegate in the iPhone App never called reply() in -[UIApplicationDelegate application:handleWatchKitExtensionRequest:reply:]" UserInfo=0x60800026e0c0 {NSLocalizedDescription=The UIApplicationDelegate in the iPhone App never called reply() in -[UIApplicationDelegate application:handleWatchKitExtensionRequest:reply:]}
Run Code Online (Sandbox Code Playgroud)

bgi*_*ham 0

handleWatchKitRequest当您通过 URL 方案打开应用程序时不会调用。它仅在响应使用 WatchKit 扩展中发出的请求时被调用openParentApplication:reply:。这就是为什么你没有看到它被执行。