Tag: nsuseractivity

NSUserActivity越区切换不适用于自定义数据

我试图用我的iPhone和iPad之间的NSUserActivity来testingiOS 8.1的越区切换function。 为此,我试图实现我自己的解决scheme,并使用苹果的PhotoHandoff项目。 但是,它不工作。 如果我提供了一个webpageURL ,切换工作正常,但是当我尝试使用userData或addUserInfoEntriesFromDictionary没有任何效果,而且我不能为了生活而弄清楚数据是如何工作的。 示例代码: NSUserActivity *activity = [[NSUserActivity alloc] initWithActivityType:@"com.company.MyTestApp.activity"]; activity.title = @"My Activity"; activity.userInfo = @ {}; // activity.webpageURL = [NSURL URLWithString:@"http://google.com"]; self.userActivity = activity; [self.userActivity becomeCurrent]; [self.userActivity addUserInfoEntriesFromDictionary:@ { @"nanananan": @[ @"totoro", @"monsters" ] }]; (我也无法使它与具有相应活动types的Mac应用程序一起工作)

在Swift 3 / iOS 10中不能触发continueUserActivity

注意:我想到了大部分 – 在最后看到更新。 还是有些混乱。 我试图在Swift 3下在Xc8b6中实现NSUserActivity处理,并且遇到处理程序协议方法的方法签名问题。 在当前的文档中,该方法被认为是: func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool 这与我在swift头文件界面中看到的略有不同。 在那里,restorationHandler的返回types是Swift.Void。 当我尝试这个时,我得到的错误是: Objective-C方法'application:continue:restorationHandler:'由方法'application(_:continue:restorationHandler :)'提供'与需求的select器('application:continueUserActivity:restorationHandler:')不匹配 我意识到编译器的警告现在不是很好,但我认为这是为它find了Obj-C方法签名,但是不知怎的,我的论点并不完全匹配。 我不知道还有什么可以去的。 它匹配那里 – 但有些错误。 随机猜测和检查还没有帮助我。 有趣的是,自动完成给了我一个不同的方法签名: public func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: ([Any]?) -> Void) -> Bool 好的一点是它编译。 不太好的一点是,当我从Spotlight中select一个索引项目并点击它来启动应用程序时,它不会被触发。 很明显,我的NSUserAction正确识别了应用程序并启动了它。 有没有什么我可以在这里失踪的地方,它不会开火restorationHandler? 注意这是从iOS 9下运行正常的项目转换而来的。 我还在WWDCvideo中看到了有关search新function的协议方法签名的另一个版本。 我试过了,编译了但没有触发。 […]