作者:robinqianqcs521 | 来源:互联网 | 2023-01-28 16:40
我有一个包含多个目标的项目,它们代表相同的应用程序,只是具有不同的样式和翻译.
由于几乎整个项目对于每个目标看起来都是一样的,我需要在Localizable.strings
文件中只有几个字符串,我需要不同.而且我不想将整个巨大的Localizable.strings
文件复制到每个项目,因为它几乎没有不同的行.
由于项目中包含第三方库/ SDK,因此我只需要1个字符串文件.所以我不能使用tableName
的localizedString
.
该问题是-我需要有一个灵活的可能性,以覆盖从只有几行Localizable.strings
对单独每一个目标.而且我不喜欢将整个文件复制到每个目标的想法,因为它将导致将来烦人的流量,如果我将有10个目标并且我需要为所有目标添加1个字符串.
该目标是有1个巨大Localizable.strings
与包括所有字符串,这将是通用于所有的目标文件,并为每个目标的字符串应该告诉不同的小配置.所以目标的文件应该合并并覆盖常见的文件.
AFAIK它本身不受Xcode的支持,所以我可能正在寻找一个可以使它工作的脚本.
因此,脚本应该查看common和target的Localizable文件,合并它们,如果在两者中都定义了一些键,那么它应该使用target的文件中的一个.
任何人都可以帮我这样的脚本吗?
PS存在类似的问题.xcassets
,并且CocoaPods通过将多个资产合并为1来解决它,并且它按预期工作 - 如果某些目标的资产包含已包含在公共资产中的同名图像,那么目标中的一个将取代它.
PS2.Android开发人员本身也支持类似的功能 - 每个图像,每个翻译都可以被"孩子"的瑕疵或者其他任何名称所覆盖:)