App 多语言本地化套件
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f1674b42/app-multilingual
技能介绍
解决什么问题
应用加新语言远不止“翻译几个字符串”。iOS 里往往同时存在 String Catalog、InfoPlist.strings、硬编码文案、运行时动态取串;切语言还要真正驱动 SwiftUI 刷新;App Store Connect 的字段有字符上限与 ASO 规则;截图上的语言列表、权限文案、持久化数据里存的旧 locale 展示文案,都可能漏做。这个技能用于把这些环节串成一次可审计的变更,避免“Excel 翻完就算完成”的伪本地化。
核心能力与工作流
- 触发后按序加载
.l10n/profile.yaml或l10n.profile.yaml,没有则探测工程;若存在.l10n/glossary.yaml,翻译必须遵守品牌术语。 - 目标语言映射到 BCP-47、App Store 语言名、iOS 枚举与设置页 key;未指定语言会追问,不猜测。
- 审计会覆盖
*.xcstrings、InfoPlist.strings、硬编码、持久化与 SwiftUI 运行时、project.pbxproj等来源,并输出 key 统计、缺失 locale、硬编码清单与风险项。 - 工程接入严格按
platforms/ios-swift.md:先确认system_only或in_app_switch;后者需补齐 AppLanguage 脚手架与 §9 三层消费链,并检查AppleLanguages写入、AppLocalization取串与.id(appLanguage)刷新。 - 批量写入翻译 JSON 与 labels JSON,保留
%@、%.0f、%1$d等占位符的位置与数量。 - 生成 App Store 元数据与截图文案,按 Apple 上限与 ASO 规则校验;交付文档写入
{metadata_dir}/{bcp47}-app-store-metadata.md,字段用text包裹便于复制。 - 同步已有语言的
settings_language_*与“多语界面”列表;完成切换语言冒烟,逐项给出预期表现或待修复文件。
注意点与适用边界
持久化层只应存 stable id 或 localization key,存了旧文案时会列出迁移映射并建议一次性 migration,不会静默改用户数据。catalog 完整不等于 UI 正确,运行时三层审计与冒烟结果是本地化是否完成的必要证据。截图图片可配合其他 ASO 技能,但文案以本技能产出为准。当前文档以 iOS/SwiftUI 为主,Google Play 可复用流程但字段上限另见 reference。
使用场景
- 应用要从中文扩展到日语,需要补齐 xcstrings、InfoPlist、硬编码和运行时三层消费链。
- App 新增韩语版本,要求同步生成 App Store 元数据、截图文案,并按字符上限校验。
- 项目已有英文和中文,需要增加应用内语言切换设置,并审计导航标题与动态文案是否刷新。
- 持久化数据里存了已翻译文案,需要梳理 key 迁移映射,而不是直接改写用户数据。
适合人员
- 负责 iOS SwiftUI 应用本地化的开发工程师,需要把新语言真正接入工程并验证切换效果。
- 移动产品负责人,准备上架新语言版本,要确认审计风险、迁移方案和交付清单。
- App Store 运营或增长人员,需要按 Apple 规则产出名称、副标题、关键词、描述和截图文案。
- 维护多语言习惯、心情、分类等动态展示数据的开发,担心持久化层写错 locale 文案。