我的 Xcode 是 v10,我正在为 SiriKit 开发一个针对 iOS 12 的自定义 intent。
在 Xcode 10 中,自定义意图是在 .intentdefinition 文件中设计的,您可以在其中为意图短语定义自己的参数以及意图的标题和该意图的 Siri 快捷方式。使用 .intentdefinition 文件构建项目会使 Xcode 自动为该意图生成一个 INIntent 派生类。
我的问题是,为了支持英语以外的其他语言,以便当用户能够操作自定义意图的快捷方式时,意图的标题以系统语言显示在常规 > Siri 和搜索中,我需要提供本地化的意图我的 .intentdefinition 文件的标题。
当我尝试在文件检查器中为我的 .intentdefinition 文件添加另一种语言,然后构建项目时,我得到:
重复输出文件 '/Users/.../IntentDefinitionGenerated/Intents/MyCustomIntent.swift' 任务:IntentDefinitionCodegen/Users/.../ru.lproj/Intents.intentdefinition
这很可能发生,因为 Xcode 在 .lproj
文件夹中看到多个 .intentdefinition 文件,并尝试为每个文件生成一个相同的命名类。
如何针对 iOS 12 本地化我的 .intentdefinition 文件?
最佳答案
转到 intentdefinition
文件 -> File Inspector
-> Select Localize
-> 现在为您的 intentdefinition
选择当前语言文件。
这将转换您现有的 intentdefinition
当前语言的文件。
现在再次选择相同的 intentdefinition
文件,添加其他语言 -> 它将创建一个新的 Intents.strings
文件,您可以在其中自定义其他语言环境的文本。
关于ios - 本地化自定义 SiriKit 意图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52384722/