You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AppIntent本地化后快捷指令应用未显示翻译问题求助

AppIntent本地化在快捷指令中不生效的解决方法

我按照以下代码对AddTask这个AppIntent的标题和描述做了本地化:

@available(iOS 16.0, macOS 13.0, watchOS 9.0, *) 
struct AddTask : AppIntent {
    static var title: LocalizedStringResource = LocalizedStringResource("Add rope", table: "Localizable.strings.")
    static var description = IntentDescription(LocalizedStringResource("Add task to the ropes app", table: "Localizable.strings."))
}

我已经在Localizable.strings文件中完成了俄语翻译,应用内可以正常显示俄语,但在快捷指令App中打开时,这些文本仍显示未翻译的英文,截图显示快捷指令里的Intent标题和描述均为英文状态。

解决步骤:

  • 修正本地化表名称:代码中table参数的"Localizable.strings."包含了多余的扩展名和句号,正确表名应为"Localizable"。修改后代码:
@available(iOS 16.0, macOS 13.0, watchOS 9.0, *) 
struct AddTask : AppIntent {
    static var title: LocalizedStringResource = LocalizedStringResource("Add rope", table: "Localizable")
    static var description = IntentDescription(LocalizedStringResource("Add task to the ropes app", table: "Localizable"))
}
  • 确认本地化文件配置:确保俄语本地化文件Localizable.strings放在ru.lproj目录下,且已添加到Xcode项目目标的「Copy Bundle Resources」中,同时勾选了俄语本地化选项。
  • 清理缓存并重建项目:执行Xcode菜单的Product > Clean Build Folder,重新构建应用后再检查快捷指令显示。
  • 刷新Intent系统索引:重启设备,或前往「设置 > Siri与搜索 > 所有快捷指令」中刷新应用的Intent列表。
  • 验证字符串键值匹配:确保ru.lproj/Localizable.strings中的键与代码里的字符串完全一致,示例:
"Add rope" = "Добавить канат";
"Add task to the ropes app" = "Добавить задачу в приложение канатов";

注意键名无拼写错误,格式符合.strings文件规范。

内容的提问来源于stack exchange,提问作者Plutonictoast1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 03:48:35