gpt4 book ai didi

ios - NSUserActivity 切换不适用于自定义数据

转载 作者:技术小花猫 更新时间:2023-10-29 11:04:22 32 4
gpt4 key购买 nike

我正在尝试使用 NSUserActivity 在我的 iPhone 和 iPad 之间测试 iOS 8.1 切换功能。为此,我尝试既实现自己的解决方案,又使用 Apple 的 PhotoHandoff。项目。但是,它不起作用。

如果我提供 webpageURL,切换工作正常,但是当我尝试使用 userDataaddUserInfoEntriesFromDictionary 时没有任何效果,我可以' 在我的一生中,弄清楚让数据发挥作用的关键是什么。

示例代码:

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" ] }];

(我也无法让它与具有相应事件类型的 Mac 应用程序一起使用)

最佳答案

我希望您已经找到了解决方案,但如果有人也偶然发现了这个问题,这里有一个解决方案。 (其实和之前的回答差别不大)

创建没有 userInfo 的用户事件,它将被忽略:

NSUserActivity *activity = [[NSUserActivity alloc] initWithActivityType:@"..."];
activity.title = @"Test activity";
activity.delegate = self;
activity.needsSave = YES;

self.userActivity = activity;
[self.userActivity becomeCurrent];

实现委托(delegate)以响应 needSave 事件:

- (void)userActivityWillSave:(NSUserActivity *)userActivity {
userActivity.userInfo = @{ @"KEY" : @"VALUE" };
}

当 needsSave 设置为 YES 时,将调用此方法并更新 userActivity。

希望这对您有所帮助。

关于ios - NSUserActivity 切换不适用于自定义数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26715531/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com