已经2025年了,不要再用Strings File这种过时的文件来实现多语。
Xcode15(2023年9月)推出了新的多语格式String Catalog。
比起Strings File用key = value这样的简陋的形式来实现多语,String Catalog简直就是一把瑞士军刀。
下面我们来看看String Catalog有哪些优点。
-
能够清晰地知道多语翻译的进度,可以渐进地翻译。
-
能够轻松实现英语中的复数。

而这在之前用Strings File是没法实现的。需要借助Stringsdict File来实现。
可以看得出来,繁琐复杂。以前开发App时因为英语国家的用户不是主要目标对象,我都选择忽略。
而用String Catalog就是顺带手的事,那就给翻译了吧。
-
每次编译可以自动抓取需要翻译的key,并且把代码中删除的key标记出来。
-
根据设备提供不一样的翻译。
Xcode还非常贴心地提供了从老版的Strings File迁移到String Catalog的功能。
String Catalog这么强大,那么拦在大家面前的障碍就只剩一点了吧。
String Catalog是随Xcode15推出的,那是不是只有iOS 17+才能用?
并不是。String Catalog是开发功能,而不是系统功能。在旧的系统上一样可以使用。
为什么可以确定?
这个是用String Catalog的工程打包出来的ipa里面看到的。可以看到,和旧的格式是一样的,是.strings和.stringsdict。打包出来的格式是一样的,没有理由旧的系统不能用。
实际上经测试也是如此。