我有一个带有某些应用程序扩展名的应用程序。为了使应用程序扩展名和主应用程序使用相同的版本和内部版本号,我配置了一个用户定义的变量,例如“ MY_BUILD_NUMBER”和“ MY_VERSION”。在我的应用程序和扩展Info.plist文件中,我只是通过${MY_BUILD_NUMBER}${MY_VERSION}加载这些变量。

这个过程非常适合保持我的版本和版本同步。我现在正在尝试研究是否可以通过健身房将Jenkins的内部版本号传递到fastlane并更新我的xcargs。但是,我一直无法使用所需的引号使此工作正常进行。

这些示例表明我需要这样设置:

gym(xcargs: "my_build_number='123'")


但是当我尝试将其作为选项传递时,我可以传递内部版本号“ 123”。但是我正在努力如何在xcargs "my_build_number='123'"中插入需要的字符串。

有没有人成功完成了这样的事情,可以提供一些见识?我需要以某种方式转义报价吗?

最佳答案

我们同时在fastlane之前的gym中设置应用程序和扩展的捆绑软件版本:

set_info_plist_value(
  key: 'CFBundleVersion',
  value: build_number,
  path: info_plist_file
)

version_string = get_info_plist_value(
  key: 'CFBundleShortVersionString',
  path: info_plist_file
)

update_info_plist(
  xcodeproj: project_filepath,
  plist_path: notification_service_info_plist_relpath,
  block: lambda do |plist|
    plist['CFBundleVersion'] = build_number
    plist['CFBundleShortVersionString'] = version_string
  end
)

关于ios - 将内部版本号传递给FaSTLane/Gym中的xcargs,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51794277/

10-12 00:31
查看更多