Search code examples
xcodebuildfastlane

How to include all asset sizes on build with Fastlane Gym


I am trying to include all sizes of an assets folder into a .ipa file used for testing. I am using Fastlane's Gym to build it.

The code below builds the artifact:

  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")

I tried manually by doing this, no sucess:

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

The code works but it's not including all the assets, I tried to add the ENABLE_ONLY_ACTIVE_RESOURCES=NO but it's not working. When taking screenshots the app assets (icons) are not visible on older devices. I need all assets size in the fat binary. Any idea how to do this?

I am using fastlane 2.143.0 and Xcode 11.3.1.

Thank you.


Solution

  • Interesting question, I never had this kind of problem with gym.

    If you don't need archiving, codesigning, etc... then a simple xcodebuild command might worth a try:

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

    workspace is the name of the .xcworkspace you want to build. If you’re not using a workspace, you need to change the variable to project in the above script.

    Can you mention the device name + iOS version that you have problems with when creating screenshots? Also please give an example of a device + iOS version where the app image assets are visible as expected.