我的Xcode是v10,我正在针对iOS 12开发SiriKit的自定义意图。

在Xcode 10中,自定义意图是在.intentdefinition文件中设计的,您可以在其中定义意图短语的参数以及意图的标题和该意图的Siri快捷方式。使用.intentdefinition文件构建项目会使Xcode自动为该意图生成INIntent派生类。

我的问题是,当用户能够操纵自定义意图的快捷方式时,为了支持除英语之外的其他语言,以使意图的标题以系统的语言显示在“常规”>“Siri&Search”中,我需要为我的应用程序提供本地化的意图标题.intentdefinition文件。

当我尝试在File Inspector中为.intentdefinition文件添加另一种语言,然后构建项目时,我得到:
duplicate output file '/Users/.../IntentDefinitionGenerated/Intents/MyCustomIntent.swift' on task: IntentDefinitionCodegen /Users/.../ru.lproj/Intents.intentdefinition
这很可能发生,因为Xcode在.lproj文件夹中看到多个.intentdefinition文件,并尝试为每个文件生成相同的命名类。

如何本地化iOS 12的.intentdefinition文件?

最佳答案

转到intentdefinition文件-> File Inspector-> Select Localize->现在,为intentdefinition文件选择当前语言。
这会将您现有的intentdefinition文件转换为当前语言。

现在再次选择相同的intentdefinition文件,添加其他语言->它将创建一个新的Intents.strings文件,您可以在其中自定义其他语言环境的文本。

ios - 本地化自定义SiriKit意向-LMLPHP

ios - 本地化自定义SiriKit意向-LMLPHP

关于ios - 本地化自定义SiriKit意向,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52384722/

10-09 21:59