ios - NSUserActivity 没有在 osx 上建立索引

标签 ios macos cocoa cocoa-touch nsuseractivity

我正在尝试将我自己的事件添加到 osx 10.11 上的 Spotlight 搜索结果中。但经过多次尝试,我无法通过关键字搜索或标题搜索进入 Spotlight 搜索结果。

{
    self.userActivity = [[NSUserActivity alloc] initWithActivityType:@"Reverse DNS keyword"];

    self.userActivity.title = @"Some title";
    self.userActivity.keywords = [NSSet setWithArray: @[@"Some keywords"]];
    self.userActivity.eligibleForSearch = YES;
    self.userActivity.eligibleForHandoff = YES;
    self.userActivity.eligibleForPublicIndexing = YES;
    self.userActivity.userInfo = @{@"name" : @"Some name"};
    self.userActivity.delegate = self;
    self.userActivity.requiredUserInfoKeys =[NSSet setWithArray: @[@"name"]];
    self.userActivity.needsSave = YES;

    [self.userActivity becomeCurrent];

    NSApp.userActivity = self.userActivity;
}

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

我还用 NSUserActivityTypes 数组和 initWithActivityType: 参数中的项目更新了 Info.plist

我还注意到在控制台中有时会出现消息:

16/09/2016 13:14:49.731 Caching encoded userInfo to use until we are marked dirty again (UAUserActivity.m #1567)
16/09/2016 13:14:49.731 Returning cached encoded userInfo (UAUserActivity.m #1508)

最佳答案

经过大量搜索,最终我在 TN2416 中找到了我的问题的答案。 :

**Are these new Search APIs available on OS X?**

CoreSpotlight and the search functionality of NSUserActivity are not supported on OS X.  However, web search results may be shown on OS X.

关于ios - NSUserActivity 没有在 osx 上建立索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39529454/

相关文章:

ios - 从 uitableview 隐藏特定 View

macos - 如何使用applescript在Safari中打开新窗口和多个URL?

objective-c - 检测屏幕/应用程序窗口的哪一部分正在使用 OpenGL?

ios - 用于了解 Xcode 4.3.2 中是否启用 ARC 的宏

objective-c - 使用 vim 进行 Cocoa 开发的最佳方式是什么?

objective-c - 帮助诊断 Cocoa 框架中的崩溃 - 可能的内存泄漏?

sql - 如何将SQL DB下载到iOS的Core Data中

ios - 使用选项卡栏从另一个 View 返回时不会调用 View Controller

ios - 如何在 iOS Swift 中处理推送通知点击?

macos - 清除 CoreBluetooth GATT 缓存而不删除绑定(bind)