You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Fastlane生成watchOS截图时,如何移除「iPhone已断开」图标?

解决Fastlane生成watchOS截图时状态栏「iPhone已断开」标识的问题

方案1:修改Fastlane配置,同时启动配对模拟器仅截watchOS截图

Fastlane默认启动指定模拟器前会关闭其他模拟器,所以要先手动启动配对的iPhone和watchOS模拟器,再指定仅在watchOS上执行截图任务:

  1. 获取配对设备的UDID:
    执行命令xcrun simctl list devices,找到标注有Paired to的iPhone和watchOS设备,记下它们的UDID。
  2. 在Fastfile里编写对应的lane:
    lane :watch_screenshots do
      # 先启动配对的iPhone模拟器
      boot_simulator(udid: "你的iPhone模拟器UDID")
      # 再启动目标watchOS模拟器
      boot_simulator(udid: "你的watchOS模拟器UDID")
      # 指定仅在watchOS模拟器上生成截图
      screenshots(
        devices: ["你的watchOS模拟器UDID"],
        skip_open_simulator: false
      )
      # 可选:截图完成后关闭所有模拟器
      sh "xcrun simctl shutdown all"
    end
    
    这样Fastlane会保留已启动的配对iPhone模拟器,watchOS状态栏就不会出现断开标识。

方案2:后期处理截图,集成到Fastlane工作流

用ImageMagick对生成的截图进行批量处理,覆盖状态栏的「iPhone已断开」标识:

  1. 安装ImageMagick:
    brew install imagemagick
    
  2. 在Fastfile的截图lane后添加处理步骤:
    lane :watch_screenshots do
      # 正常生成watchOS截图
      screenshots(devices: ["你的watchOS模拟器UDID"])
      # 批量处理所有截图,覆盖状态栏的断开标识
      Dir.glob("./fastlane/screenshots/*.png").each do |img_path|
        # 请根据实际截图的坐标调整矩形区域,示例为覆盖右上角区域
        sh "convert #{img_path} -fill '#FFFFFF' -draw 'rectangle 250,0 360,20' #{img_path}"
      end
    end
    
    你可以用截图工具查看「iPhone已断开」标识的具体坐标,修改rectangle的参数(格式为x1,y1 x2,y2,即矩形左上角和右下角坐标),确保完全覆盖标识。

内容的提问来源于stack exchange,提问作者kelin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 20:05:05