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

iOS/macOS中文本地化:苹果为何未遵循标准ISO 639编码?

中文本地化陷阱:Xcode生成的lproj命名与ISO标准差异

问题提醒

  • 开发无需切换设备区域的多语言App时,若代码依赖ISO 639-1/2标准编码(比如简体中文用zh、繁体中文(台湾)用zh-TW)对接第三方语言处理API,一定要注意:Xcode 14.0.1添加中文本地化后,App Bundle里生成的是zh-Hans.lproj(简体)和zh-Hant.lproj(繁体)文件夹,而非符合ISO标准的命名。
  • 这个差异会直接导致依赖标准编码的语言逻辑失效,我当初排查了好几小时才定位到问题,特意提醒其他开发者避开这个坑。

苹果命名逻辑说明

苹果的本地化文件夹命名遵循IETF BCP 47标准,而非单纯的ISO 639-1。zh-Hans对应简体中文(Hans是简体的脚本标识),zh-Hant对应繁体中文(Hant是繁体脚本标识)——这种命名方式能更精准地区分中文的不同书写体系,覆盖港澳台及海外所有繁体使用场景,比ISO仅按地域划分的方式更全面。

关于标准不一致的疑问

苹果没有完全遵循ISO 639-1,核心原因是ISO标准只定义了语言大类,无法满足中文不同书写体系的细分需求。至于文档没有及时更新,大概率是官方文档的迭代滞后于工程实现,导致开发者的预期和实际行为不匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 13:45:30