本地化 Siri 捐赠的快捷方式
Posted
技术标签:
【中文标题】本地化 Siri 捐赠的快捷方式【英文标题】:Localizing siri donated shortcuts 【发布时间】:2018-08-02 06:41:30 【问题描述】:我一直在查看donating a shortcut to siri 的文档以及一些关于它的博文。我已经设法使用NSUserActivity
为我的应用添加了一个快捷方式:
let activity = NSUserActivity(activityType: "com.myapp.mobile")
activity.title = "Some title"
activity.isEligibleForSearch = true
activity.isEligibleForPrediction = true
activity.suggestedInvocationPhrase = "Summon my app please"
activity.persistentIdentifier = NSUserActivityPersistentIdentifier(rawValue: "com.myapp.mobile")
view.userActivity = activity
activity.becomeCurrent()
但到目前为止,我不知道应该如何在快捷方式上进行国际化。我应该在将suggestedInvocationPhrase
和title
传递给活动之前翻译它们还是由Siri 处理?
【问题讨论】:
【参考方案1】:您需要像对待应用中的任何其他文本一样对待传递给 NSUserActivity 的文本 - 在将文本传递给 Activity 之前将其本地化。
【讨论】:
【参考方案2】:您应该使用NSString.deferredLocalizedIntentsString
API (see docs) 对其进行本地化,以便在向用户显示意图时使用正确的语言。 (用户可能会同时更改手机的语言。)
activity.suggestedInvocationPhrase = NSString.deferredLocalizedIntentsString(with: "localization_key_for_your_invocation_phrase") as String
【讨论】:
以上是关于本地化 Siri 捐赠的快捷方式的主要内容,如果未能解决你的问题,请参考以下文章