如何使用 Fastlane Gym 在构建时包含所有资产大小

How to include all asset sizes on build with Fastlane Gym

我正在尝试将资产文件夹的所有大小包含到用于测试的 .ipa 文件中。我正在使用 Fastlane 的健身房来构建它。

下面的代码构建了工件:

  gym(
    scheme: "MyApp",
    configuration: "Debug",
    silent: true,
    skip_archive: true,
    skip_codesigning: true,
    include_bitcode: false,
    derived_data_path: "/Users/me/Library/Developer/Xcode",
    xcargs: "ENABLE_ONLY_ACTIVE_RESOURCES=NO")

我手动尝试这样做,没有成功:

sh("xcodebuild -showBuildSettings -workspace ../MyApp.xcworkspace -scheme MyApp -configuration Debug ENABLE_ONLY_ACTIVE_RESOURCES=NO")

代码有效,但它不包括所有资产,我尝试添加 ENABLE_ONLY_ACTIVE_RESOURCES=NO 但它不起作用。截取屏幕截图时,应用程序资产(图标)在旧设备上不可见。我需要 fat 二进制文件中的所有资产大小。知道怎么做吗?

我正在使用快速通道 2.143.0 和 Xcode 11.3.1

谢谢。

有趣的问题,我从来没有遇到过 gym 这种问题。

如果您不需要存档、代码签名等...那么一个简单的 xcodebuild 命令可能值得一试:

xcodebuild(
  workspace: 'MyApp',
  scheme: 'MyApp',
  configuration: 'Debug',
  destination: 'generic/platform=iOS'
)

workspace 是您要构建的 .xcworkspace 的名称。如果您不使用工作区,则需要将上述脚本中的变量更改为 project

您能否提及您在创建屏幕截图时遇到问题的设备名称 + iOS 版本?另请提供设备 + iOS 版本的示例,其中应用程序图像资产按预期可见。