我正在尝试启动快速播放器以从 iOS 模拟器录制视频和音频。
我想我可以为每种语言和每种设备创建一个带有数组的 shell 脚本。然后循环并运行一个快车道,在那里传递参数。
我已经看到您可以before_each
在您的 fastfile 中使用,但这将在模拟器启动之前启动,但是我需要在模拟器启动时启动快速播放器。
我正在尝试启动快速播放器以从 iOS 模拟器录制视频和音频。
我想我可以为每种语言和每种设备创建一个带有数组的 shell 脚本。然后循环并运行一个快车道,在那里传递参数。
我已经看到您可以before_each
在您的 fastfile 中使用,但这将在模拟器启动之前启动,但是我需要在模拟器启动时启动快速播放器。
fastlane 没有对 QuickTime 的集成支持,因此您需要自己使用 shell 脚本来执行此操作。因为 QuickTime 和 Simulator 的启动时间可能会有所不同,所以我认为要正确计时会很困难且容易出错。
如果你想继续探索这种方法,我会避免使用before_each
,而是依赖一个车道调用另一个车道的能力,例如:
lane :record_qt_video do
my_languages = [] # some array of options
# launch quicktime
# launch simulator
my_languages.each do |lang|
launch_localized_app(language: lang)
# save video and reset quicktime state
end
end
private_lane :launch_localized_app do |options|
lang = options[:language]
# run whatever you want in the simulator
end
我看到您正在处理使用集成模拟器录制选项而不是 QuickTime 的fastlane 拉取请求。我认为这可能是一种更好的方法,因为它将消除等式中的时间问题。