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
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.
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.}
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.
So unfortunately, running and testing on a physical device is unrelated to my questions and issues.
I've confirmed these issues exist with
SDK:
Simulators:
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”.