Background Asset Override Missing

Hello,

With Xcode 27.1 RC 1, the Background Assets override inside of developer settings is now a blank page.

I see there's a new setting for background assets under Scheme < Options.

Will the URL replacement return?

Thanks

@StonedStudio I see Edit I do not see options under Scheme on Xcode, but maybe I'm not looking at the correct place, can you please provide a screenshot or a complete navigation to see that?

The only place with an options is at In Xcode (under Product > Scheme > Edit Scheme… > Run > Options),

More information and details you can provide will help engineers here figure it out and understand the question or the issue.

Thanks so much.

Albert  WWDR

Hi @DTS Engineer,

With Xcode 27, there is the new runtime scheme option for serving a local asset automatically. You are correct.

Previously, assets had to be served through a server and to configure the local override, on the device, you had to go to Settings App > Developer > Background Assets Override. Then, there would be a text field where you could input your IP address.

This page is still available in os27, but the text field is missing and the page is blank.

Is it still possible to host asset packs as a local server? And if so, where has the url override moved to?

My asset packs are large, and hosted on a dedicated Mac with a pipeline that process everything.

See: https://developer.apple.com/documentation/backgroundassets/testing-asset-packs-locally#Configure-a-URL-override-in-Developer-settings

This is what I see inside of Settings > Developer and click Development Overrides on the simulators

@StonedStudio On the simulator!! Got it, have you tried a real device? Not the duo but another device running iOS 27+?

Thanks

Albert  WWDR

Yes, the simulator.

Between Xcode 26 and Xcode 27, background assets were enabled on the simulator, and you could use a locally hosted asset pack from the url override inside of Settings > Developer and click Development Override

This feature appears to no longer be available for any simulator using Xcode 27.1

Additionally, it's not clear how the scheme setting is supposed to be used.

I set it to a folder that contains multiple compressed and un-compressed asset packs and I'm seeing the asset packs failing to be found.

Hi Albert @DTS Engineer

I've updated my code from os26 -> os27.

For some asset packs, I'm getting this error

The manifest couldn’t be refreshed: DecodingError.dataCorrupted: Data was corrupted. Debug description: The given data was not valid JSON.. Underlying error: Error Domain=NSCocoaErrorDomain Code=3840 "Unexpected end of file" UserInfo={NSDebugDescription=Unexpected end of file}

From this code

return try await AssetPackManager
    .shared
    .manifest
    .assetPack(withID: id)

Other asset packs will pass this code

try await AssetPackManager
    .shared
    .ensureLocalAvailability(
        of: assetPack,
        requireLatestVersion: true
    )

But then ultimately fail with this error

A download with the ID “Required-AssetPack” failed: Error Domain=BAURLDownloadErrorDomain Code=101 "The download failed because the file size provided does not match what was downloaded." UserInfo={NSLocalizedFailureReason=The download failed because the file size provided does not match what was downloaded.}
  • Xcode 27
  • iPhone Duo Simulator 27.1

Thank you for your response. Could you please run the code on a physical device and confirm whether the results are consistent? Given the specificity of the error, verification on actual hardware is advisable. Additionally, please provide the Xcode version and build number in use, as this information is necessary to determine the simulator configuration.

Once we have gathered all necessary information, we can proceed with filing a bug report. However, I believe you may still be on the beta version rather than the release candidate.

Thanks so much for all your help and patience on this.

Albert  WWDR

Hi Albert, @DTS Engineer

My primary concern is: Will support for using Background Assets with a local server in the simulator return?

My second concern is that: I can't get background assets to work at all in the simulator.

  • My App is data-intensive, and requires background assets to provide that data in order to function.
  • I require the use of a simulator because I don't have the physical device.
  • I require using the local server because I have multiple asset packs (over 100 GB) setup on a dedicated Mac/pipeline.

So unfortunately, running and testing on a physical device is unrelated to my questions and issues.

I've confirmed these issues exist with

  • Xcode 27.1 RC 1
    • iOS 27.0 Simulator
    • iOS 27.1 Simulator
  • Xcode 27.1
    • iOS 26.5 Simulator
    • iOS 27.0 Simulator
    • iOS 27.1 Simulator

SDK:

  • 27.1 (24A94232)

Simulators:

  • 27.1 (24A94425), Apple silicon
  • 27.0 (24A434), Apple silicon
  1. .aar files inside of the folder set in the scheme are not uploadded into the ~/Simulator/App/Staging/Unlocalized/AssetPack directory
  2. The path of a resource appears to behave differently on simulator with the scheme asset packs compared to on device downloaded asset packs

This doesn't seem to work on device either.

Checking for updates failed: The request timed out.
The manifest couldn’t be refreshed: The request timed out.

Hi Albert, @DTS Engineer

I've somehow managed to get the assets packs to not throw an error on the simulator... However, I can not access the files by URL to read them. They do not exist.

Some files, I can manipulate directly into Application Support, and other various directories. But not all of them will work that way.

I have a large amount of files (Map Tiles) and lots of GBs being used.

This is a severe problem. I do not own all of the devices needed in order to take App Store Screenshots. I can not take these screenshots without working Background Assets in the simulator. Please address and esclate.

On Device:

Another error I'm getting using Xcode scheme option is timeout.
Asset Pack is 12 GB

iPhone Duo 27.1
Xcode 27.1

Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorDomainKey=4, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDownloadTask <E28841AE-8856-4EE7-822F-3B6ADCC12F8C>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDownloadTask <E28841AE-8856-4EE7-822F-3B6ADCC12F8C>.<1>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://xcode:e11fb279c65acd4e5dc4521a87cfbf928ac50ae4f3bddd5f8268b6b3b9bac35e@localhost:52317/assetpacks/Database, NSErrorFailingURLKey=https://xcode:e11fb279c65acd4e5dc4521a87cfbf928ac50ae4f3bddd5f8268b6b3b9bac35e@localhost:52317/assetpacks/Database, _kCFStreamErrorCodeKey=-2102}

Hi Albert @DTS Engineer

I'm confident that Asset Packs are broken on simulator.

let assetPackIsAvailableLocally = try await AssetPackManager
    .shared
    .assetPackIsAvailableLocally(withID: assetPack)
print("assetPackIsAvailableLocally", assetPackIsAvailableLocally) // prints true
let file = try await AssetPackManager
    .shared
    .descriptor(
        for: .init("FileThatExists.png"),
        searchingInAssetPackWithID: assetPack
    )
// throws A file descriptor couldn’t be opened for “FileThatExists.png”: No file was found at FileThatExists.png”.