问题标签 [nsuseractivity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1552 浏览

ios - 带有 NSUserActivity 的 Siri 快捷方式 - 活动删除不起作用

我正在使用API 以及 WWDC Introduction to Siri Shortcuts 和 Building for Voice with Siri Shortcuts 视频中的NSUserActivity示例代码部分但是一旦我的用户删除了相应的数据,我在删除活动时遇到问题。我的应用程序是一个读书应用程序,用户可以在其中下载和阅读书籍,所以我希望用户下载的每本书都有快捷方式,但是当/如果他们删除这本书时删除快捷方式。CoreSpotlightNSUserActivity

我在这里有代码定义NSUserActivity及其相关属性:

我还有定义 aCSSearchableItemAttributeSet及其相关属性的代码,将其连接到NSUserActivity并使其处于活动状态:

我通过研究发现 usingattributes.relatedUniqueIdentifier摆脱了userInfo字典,在我的情况下,这使得快捷方式根本不显示,所以我attributes.domainIdentifier改为使用。

现在在另一个文件中,我去删除快捷方式。我试过使用这个使用self.activity.persistentIdentifier属性的代码:

我也试过使用这个使用attributes.domainIdentifier属性的代码:

这些解决方案都没有奏效。在这两种情况下,我都检查了productID传递给函数的参数,并且两次都得到了正确的值。

有什么我做错了还是我错过了什么?

提前感谢大家的帮助。这是我的第一篇文章,如果我需要提供更多信息,请告诉我。

0 投票
1 回答
570 浏览

ios - NSUserActivity 与 Core Spotlight 深层链接

我同时使用 NSUserActivity 和 Core Spotlight 来索引我的应用程序上的内容。我使用 Core Spotlight 的原因是因为我想在用户访问(打开)它之前索引这个内容。

我面临的问题是在 AppDelegate 方法中: func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool

当我在视图控制器中执行此操作时,基本上userActivity 只包含正确的信息:

userActivity = myUserActivity

但如果我这样做,它就不起作用:

CSSearchableIndex.default().indexSearchableItems(searchableItems).

通过使用第二种方法(Core Spotlight),我可以在 Spotlight 搜索中看到所有结果,但是当我点击该项目时,AppDelegate 方法中没有任何信息。

最糟糕的是:

po userActivity.activityType "com.apple.corespotlightitem"

如果我打印activityType,而不是我自己的,我会得到这个......

有什么建议么?

0 投票
0 回答
197 浏览

ios12 - 如果单个视图中有两个按钮,则无法通过 INUIAddVoiceShortcutButton 设置单独的 Siri 快捷短语

如果单个视图中有两个按钮,我无法通过 INUIAddVoiceShortcutButton 设置单独的 Siri 快捷短语。一旦我为一个按钮录制短语,另一个按钮就会与第一个按钮一起更改为编辑模式。我该如何解决这个问题?

录音前的 画面 录音后的画面

0 投票
1 回答
183 浏览

ios - 如何预定义应用于触发 Siri 某些操作的某些短语

我可以使用 NSUserActivity 或 Intent 创建快捷方式,然后让用户记录将触发某个快捷方式的某个短语,方法是向他展示一个适当的视图控制器,或者发送 hi 到 Settings->Siri->Shortcuts . 为此,我将仅使用此代码,例如:

这只是为 Siri 的建议添加了一个快捷方式,并使其在“设置”中可用,但用户仍然必须记录短语才能通过某个短语触发快捷方式。

如何为特定操作预定义诸如“执行某些任务”之类的短语并使用户可以使用它,而无需手动记录它?

更准确地说,我想根据用户所说的话在我的应用程序中打开一个特定页面。例如,打开第一页,打开第二页,打开菜单等...

0 投票
1 回答
2688 浏览

ios - 如何创建一个接受来自用户的输入的 Siri Intent

我创建了一个自定义 Intent,其参数如下:

在此处输入图像描述

我已经捐了:

它显示正确:

在此处输入图像描述

但是,我想要一个接受用户输入的 Intent。例如,Messages.app:

在此处输入图像描述

如何配置我的自定义 Intent 来处理输入?

0 投票
1 回答
247 浏览

ios - 如何在应用程序启动时创建多个快捷方式

所以我正在尝试在应用程序委托中捐赠多个快捷方式(如 20 种类型的活动)......如果我在特定的视图控制器中捐赠它很奇怪,但是如果我在应用程序委托中创建一个 for 循环它不起作用......这是代码:

0 投票
1 回答
224 浏览

ios - 基于 NSUserActivity 的 Siri 快捷方式是否支持自定义 UI?

基于 NSUserActivity 的快捷方式是否支持自定义 UI?

我在自定义 Intent 的帮助下创建了自定义 Siri 快捷方式。我能够创建一个没有 UI 的版本(只是Intent)和一个带有自定义 UI 的版本(IntentsUI),它在与 Siri 的内联交互过程中显示。是否可以使用NSUserActivity基于 - 快捷方式的自定义 UI?

0 投票
0 回答
601 浏览

ios - 在objectiveC中获取和设置NSUserActivity

我尝试了下面的代码来设置和获取 NSUserActivity 但它对我不起作用。我无法获取 nsuseractivity 的数据,我在 iOS 版本 10 及更高版本的设备中测试以下代码。在 callkit 中设置 NSUserActivity:

在 info.plist : NSUserActivityTypes 作为 INStartAudioCallIntent INStartAudioCallIntent

在 Appdelegate.m 中:

注意:我检查了 Speakerbox 的代码。

0 投票
0 回答
170 浏览

ios - 为什么通过 Spotlight 打开时 NSUserActivity contentAttributeSet 为零?

当我在我的应用程序中查看特定屏幕时,我正在计算一个 NSUserActivity。(没关系,想象一个位置)

我使用 contentAttributeSet 设置了很多有关此活动/位置的信息。

当我一遍又一遍地访问这个屏幕时,我将 viewController 的 userActivity 属性设置为这个派生活动,并调用becomeCurrent()它。

最终,Siri 会在 Spotlight 中建议该快捷方式。正如预期和期望的那样。我点击它,它会启动我的应用程序并调用:

但是,该.contentAttributeSet属性将为零。

为什么?我这里有什么不明白吗?我想我以后需要访问的任何数据都应该在 userInfo 字典中?那行得通(只要我不设置webpageURL)

0 投票
0 回答
48 浏览

corespotlight - Core Spotlight 字幕属性

CSSearchableItemAttributeSet 中是否有内容类型列表 -> 属性字段,用于描述 Spotlight 搜索结果字幕使用哪些属性字段?

Apple 的示例文档显示了正在使用的多个内容属性,例如创建日期、更改日期等,但我找不到实际考虑显示哪些字段的映射。