我正在尝试从我的 WatchKit 应用程序发送一个字符串:
我可以通过锁定屏幕很好地启动应用程序,但是当调用 continueUserActivity 方法时,userActivity.userInfo 不包含任何值,我在这里遗漏了什么吗?

-我得到的唯一值是 activityType
watch :

- (void)createActivity {
    self.activity = [[NSUserActivity alloc] initWithActivityType:@"com.myApp.urlSend"];
    [self.activity setUserInfo:@{@"url":self.wake.href}];
    [self.activity setTitle:self.wake.title];
    [self.activity becomeCurrent];
}

电话:
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *))restorationHandler {

    NSString *url = userActivity.userInfo[@"url"];
}

最佳答案

我刚刚注意到您正在自己创建事件。如果您查看文档,您会发现与其他平台相比,Handoff 在 Watch 上的工作方式略有不同: https://developer.apple.com/library/prerelease/ios/documentation/WatchKit/Reference/WKInterfaceController_class/index.html#//apple_ref/occ/instm/WKInterfaceController/updateUserActivity:userInfo:webpageURL :

您只需要调用 updateUserActivity 并在该调用中添加您的 userInfo 字典。

关于ios - 使用 NSUserActivity 的 Handoff 中的 userInfo 为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30054937/

10-13 03:51