我有一个包含多个应用程序目标的项目,需要将一个现有的英文本地字符串文件添加到其中一个目标中,仅用于开发。
这是我的情况:
- 目标A使用英语+多个非英语本地化字符串文件。
- 目标B仅使用1个非英语本地化字符串文件。
- 目标B不能在App Store版本中包含英语字符串。
然而,在开发过程中,我们目前手动将英语字符串添加到Target B的本地化文件中(使用从Target A获取的现有文件),并在提交到App Store之前将其删除,以帮助开发。
由于我们已经运行Fastlane设置/拆卸脚本,因此我希望自动化脚本添加/删除英语字符串,这样我们就不必每次都手动执行了。
在Fastfile中,我知道如何向Target B添加文件,但由于Xcode中的本地化文件/引用与常规文件结构略有不同,我不确定正确的方法是什么。
这是我目前的进展:
def add_english_localization()
require 'xcodeproj'
project = Xcodeproj::Project.open("../Code/#{XCODE_PROJ}")
app_target = project.targets.first #Target B
english_file_ref = project.main_group.new_file('../Code/TargetA/Application/Supporting Files/en.lproj') #Existing english file in Target A's directory
app_target.add_file_references([english_file_ref]) #This adds the file but doesn't properly update Xcode's Localization references...?
project.save
end
截图:
project.pbxproj
文件中添加一些行。 - Iulian Onofrei