On devices and simulators with iOS 26.1, the animation does not work correctly (the initial and final screens are distorted). I use open class func transition(with view: UIView, duration: TimeInterval, options: UIView.AnimationOptions = [], animations: (() -> Void)?, completion: ((Bool) -> Void)? = nil)
with options: .transitionFlipFromRight
Xcode
RSS for tagBuild, test, and submit your app using Xcode, Apple's integrated development environment.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Today when I went to add a package via SPM in Xcode 16.0, the "Recently Used Loading..." spinner ran and never stopped. I could not add any packages. The packages I am loading are remote and not from my own repo. I did a "Refresh Account" via the right-click which then shows items in my own hosted repo (for both Bitbucket Cloud and Github), but "Recently Used" just loads forever and there is no way to add a package.
I tried all of the usual cache deleting to no positive outcome. I saw that others had to reinstall Xcode which I am loath to do. I wound up executing defaults delete com.apple.dt.Xcode which of course made me lose all of my settings, but that did correct the problem. At least I thought it did. However, after getting everything reset, it stopped working again with the above issue.
In short, I found the issue is with Bitbucket Cloud. If I remove this account from Xcode, SPM works as normal. Add it back (all credentials are 100% fine) and I can no longer use SPM.
Does anyone know why Bitbucket Cloud is now breaking SPM and more importantly what can be done to have this account but also have a functioning SPM?
Hi!
I'm having problems installing the iOS 18.4 SDK for Xcode. The installation fails from within Xcode or from the command line with the following error message:
$ xcodebuild -downloadPlatform iOS
Downloading iOS 18.4 Simulator (22E238): Preparing to download...2025-04-05 10:16:50.451 xcodebuild[7138:103696] DVTDownloadable: Observed finish. Cancelling download asset. {
assetId = 6fb1e5fe25ee1c372f7116516e615c556906bd4e;
assetIdHash = 9d684dee0a7bae81ba9c4f79475976f41789eaf3;
assetType = "com.apple.MobileAsset.iOSSimulatorRuntime";
attributesHash = 99e0653b3c175e32d4a045cb9be856573b2938c1;
contentHash = d4aad730490a4476d8179d4cdb7c1fcae8dd388a;
nonIdHash = be7dd5950580ff7c8e1f822b24bd76d58c08b8aa;
pallasDynamicAssetIdHash = d7904ac1d93cc3702244074c49aafad923a6e2b4;
policyHash = d3700ca0e5058eb1d7b21fd74b1c225a66f5e74e;
urlHash = fc93246f74e44ae2b94a727bfd9bac228f69f961;
}, error: (null)
Downloading iOS 18.4 Simulator (22E238): Error: Error Domain=SimDiskImageErrorDomain Code=5 "(-67061 invalid signature (code or signature have been modified)" UserInfo={NSLocalizedDescription=(-67061 invalid signature (code or signature have been modified), unusableErrorDetail=}
When trying to install in Xcode I get the following error message:
Any idea on how to get this fixed is appreciated!
Topic:
Developer Tools & Services
SubTopic:
Xcode
As subject, after update to Xcode 26.0.1, none of the simulator able to download, tried click the Get button, tried run command in terminal, all failed.
Error from terminal:
xcodebuild -downloadPlatform iOS
Finding content...
Automatically resolved architecture variant for platform iOS as 'universal'.
2025-10-09 06:21:24.423 xcodebuild[1789:30064] DVTDownloadable: Download Failed. Downloadable: {
architectures = (
arm64,
"x86_64"
);
authentication = none;
category = simulator;
contentType = cryptexDiskImage;
dictionaryVersion = 2;
downloadMethod = mobileAsset;
fileSize = 10066611438;
identifier = "com.apple.dmg.iPhoneSimulatorSDK26_0";
isInternalContent = 0;
isUserInitiated = 1;
name = "iOS 26.0 Universal Simulator (23A343)";
patchableFrom = (
);
platform = "com.apple.platform.iphoneos";
simulatorVersion = {
buildUpdate = 23A343;
version = "26.0";
};
version = "26.0.0.0";
}. Download failed.
Any idea how to resolve this?
iMac with Intel processor
I use Carthage to build a set of dependencies. I generate .xcframework files with code for both macOS and iOS. This works through Xcode 26 beta 4. With Xcode 26 beta 5, the resulting .xcframework files seem to have code only for iOS, not macOS. Each framework has a ios-arm64 directory and a ios-arm64_x86_64-simulator directory, but no macos-arm64_x86_64 directory.
This is affecting 3 of my 7 cross-platform dependencies that I compile with Carthage. What those 3 seem to have in common is that each has one target and scheme for the shared library – instead of one for iOS and another for macOS.
I may have to create a second scheme and target in each of these dependencies, or move to SPM. But I am wondering if anyone has another suggestion.
Thank you.
John
I have a very annoying problem when I try to distribute my app to the App Store. Organizer does not recognise the project as an app I think.
Xcode version is 16.2 but I have tries in 15.4.
With Xcode 14, the device selection on the bottom of the storyboard canvas has changed, and the iPhone 12 and 13 mini screens are no longer there, as well as there only being one model of iPad. Is there a way to add more devices to this section?
I have simulators installed for these devices, and this is the way I've been checking compatibility so far, but this is not sustainable.
I appreciate any help that you can give me.
I have a multi target project where every target relies on a built "web bundle" which is basically a collection of html, optimized images, and optimized javascript.
Right now that web bundle is built in a pre build step by running a script. The script takes awhile to run and outputs to a folder that is referenced into the project via a PBXFileReference which is then referenced in the Copy Bundle Resources step.
96516AC22BF928DD00576562 /* build */ = {isa = PBXFileReference; lastKnownFileType = folder; name = build; path = "../web-ui/build"; sourceTree = "<group>"; }
....
96516AC32BF928DD00576562 /* build in Resources */ = {isa = PBXBuildFile; fileRef = 96516AC22BF928DD00576562 /* build */; };
As a step, I wrote an aggregate target that can also run this script. I specified its input and output files and turned off sandboxing. It does exactly what I need it to. Critically it is ran based on dependency analysis. If I modify any file in web-ui it rebuilds, if I dont I can repeatedly build the aggregate target and it will not re-run the script. This is perfect.
A97590172E419CBA00741928 /* Build Web Bundle */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 12;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"$(SRCROOT)/xcodescripts/build-web-bundle.bash",
"$(SRCROOT)/web-ui/index.html",
"$(SRCROOT)/web-ui/vite-env.d.ts",
"$(SRCROOT)/web-ui/vite.config.ts",
"$(SRCROOT)/web-ui/tsconfig.json",
"$(SRCROOT)/web-ui/stats.html",
"$(SRCROOT)/web-ui/postcss.config.js",
"$(SRCROOT)/web-ui/package.json",
"$(SRCROOT)/web-ui/justfile",
"$(SRCROOT)/web-ui/src/",
);
name = "Build Web Bundle";
outputFileListPaths = (
);
outputPaths = (
"$(SRCROOT)/web-ui/build/",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "exec \"${SCRIPT_INPUT_FILE_0}\"\n";
};
You may notice I reference a src file. This is made possible via a flag USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES which allows Xcode to check folder dependencies recursively.
The problem is that my other targets do not automatically recognize that they need to run the "WebBundle" aggregate target in order to update a resource they copy in their "Copy bundle resources" phase.
So I tried adding it as a Target Dependency.
A9DE685B2E41C9A8005EF4E0 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = A97590132E419C1200741928 /* WebBundle */;
targetProxy = A9DE685A2E41C9A8005EF4E0 /* PBXContainerItemProxy */;
};
Unfortunately this breaks whatever magic was allowing the script to be run only when there are web bundle changes. Every build it runs the "Build Web Bundle" script.
I think what I am missing is a way to specify in these other targets that a resource they are used to copying from the Xcode PBXFileReference is produced by the aggregate target. This way they can start to reason about the dependencies.
Other possibilities are that I should be building the web bundle to a separate location. Or that these references are somehow broken in another way. To be clear the folder format is as thus
project/
iOS/
client.xcodeproj
web-ui/
build/ (web bundle build is output here and referenced relatively)
src/
index.html (and other things)
From time to time while I'm editing code, Xcode 15.0.1 says "The file 'project.xcworkspace' has been modified by another application" asking me "Keep Xcode Version" or "Use Version on Disk". I didn't see this before 15.0.1 (or 14.1.1).
Who changed the file? What should my answer be? Thanks.
Everytime when iOS simulator is launched I het a lot of repeated "*** quit unexpectedly" alerts.
Where "***" is a mix of "managedappdistributiond","healthappd", and "findmylocated"
Even after the simulator is launched I still het random "*** quit unexpectedly" alerts.
Very annoying because the alerts deactivates the active window
This is on an MacBook Pro M3 Max,, Xcode 15.2, Sonoma 14.2.1, it also happens with Xcode 15.1
A co developer (MacBook Pro M1 Max,Xcode 15.2, Sonoma 14.2.1) does not have the issue
Any idea how I can prevent this from happening?
Update
Every mentioned service crash happens in libswiftCore.dylib at
0x1929f3938 assertionFailure(:_:file:line:flags:) + 248
Ok, I'm going crazy here. I have a static library for iOS that I want to build for the simulator. I use xcodebuild -destination="iOS Simulator" and then check the library using otool which tells me the platform is 6, which is Mac Catalyst.
When I look at the output of xcodebuild, it says
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, variant:Mac Catalyst, id:00006041-0008492E3AA1801C, name:My Mac } ...
It has the simulator listed too, way down the list:
{ platform:iOS Simulator, arch:x86_64, id:AB7A99B3-8D24-4F73-A42D-9BB45321928D, OS:18.6, name:iPad (A16) }
When I put all of that into xcodebuild for the platform, it still says there are multiple matching destinations and chooses Mac Catalyst. Why? How? What? Does platform="iOS Simulator" mean nothing? How in the world does "Mac Catalyst" match "iOS Simulator"?????
I don't want Mac Catalyst, I don't need Mac Catalyst, and I can't get rid of Mac Catalyst. Nothing I specify in xcodebuild results in anything I can build that will compile for the simulator.
What the heck am I doing wrong?
Problem: iOS 16.4 runtime targets are not available for selection, however the 16.4 simulator shows as installed under "Manage run destinations"
Config: Xcode 15.0, Sonoma 14.0, M1 Mac-Mini
Background: I write and maintain apps for my business unit. A co-worker dropped a phone on my desk and said 'The app doesn't work anymore, can you fix it'. Well, it turns out the phone is running iOS 16.6. The OS had been upgraded. This sent me down the path of upgrading Xcode on a development Mac, which also forced a MacOs upgrade on me. The end result is I now have XCode 15 on Sonoma, but have an iOS 16.6 device that I'm trying to target. Since I don't have any iOS 17 devices I didn't install the 17.0 runtime.
To install the "16.6 runtime" I went to: "Xcode - Settings - Platforms" and hit the + in the lower left and under "Previously released simulators" I selected iOS.
I selected iOS 16.4 as it was the closest I could see to 16.6 so I'm assuming it still works with 16.6. It took a few attempts to download correctly, but it now shows up in my platforms as "iOS 16.4 Simulator 6.18 GB on disk".
If I select "Product - Destination - Manage Run Destinations" I can see simulators for 10 different iOS devices (from iPad 10th gen to iPhone SE) all running iOS 16.4.
Great! I must be ready to develop and test for 16.6. Right?
Nope.
In the dropdown beside my App name the only option that is shown to me is "iOS 17" and the "Get" button beside it. I was expecting to my iOS 16.4 simulators as available target destinations, but there's nothing other than "iOS 17 - Get".
This is an old App that I'm maintaining so its deployment target is not new. Selecting a different iOS Deployment target doesn't have an effect.
I tried going into Manage Run Destinations and selected my iPhone 14 simulator on iOS 16.4 as "show run destination always". - no change
Older iOS version do not show as destinations.
Anyone else encounter this? Did you figure it out?
Help?
Thx
I just created a new project in the newest version of Xcode as a sample project for a feedback.
Bug 1
So simply what I do in every new project is create a "Supporting Files" group (not a folder because I don't want to move these files on the file system). I put the following files in this group:
.entitlements file
-the Info.plist (which apparently new projects don't create anymore because I don't see one).
main.m
Assets.xcassets
In previous version of Xcode this was done with the "New Group without Folder" action (though back in the day I believe you'd get yellow folders in "New Group" and blue folder with 'New Folder" and they were separate actions.... which was actually better and much less insane IMO but that's not really important to this).
In any case, "New Group without Folder" is nowhere to be found in the context menu. I finally was able to get "New Group" to appear as long as I wasn't right clicking underneath any directory. But.... New Group actually creates a New Folder, just like New Folder. So I put the .entitlements in the Supporting Files group (which is not a group, but a directory) and the app won't compile unless I fix the path in project settings because I moved the file which is most definitely not what I wanted.
So we can no longer group files in the project navigator without moving them to new directories? Is this intentional behavior? It can't be, right?
Bug 2
I noticed dragging and dropping to reorder files in the project navigator no longer seems to work? In previous versions of Xcode I could drag and drop to reorder files (in groups and in folders, this would work). This appears to no longer work. I just have to accept the way Xcode orders my project files?
Starting Xcode 14, iOS Simulator is able to communicate with APNs in order to register for notification in the sandbox environment. I created a sample test for this.
A dumb iOS application that registers for notifications. It has UITests to automatize the tap on the consent popup (it is not possible to ask for the permission via CLI sadly).
Once the application registers, the AppDelegate method didRegisterForRemoteNotificationsWithDeviceToken is called and the device token is sent to a local server application (node.js).
The test itself creates an iOS 18.6 Simulator with xcrun simctl, builds such app and run the tests through through CLI with xcodebuild.
Running this on my personal Macbook Pro M1 2021 goes well every time, so I wanted to bring it on Github Actions (arm64 macOS machines), in order to test the works on a open source library I'm building (hapns).
Contacting Github support led me to test this on a macOS image running inside a VM inside a Veertu Anka container on my personal Macbook Pro, due to an VM architectural limit suspicion.
The results were the same: iOS simulator isn't able to receive the device token. Not even didFailToRegisterForRemoteNotificationsWithError is called (tested through some network probes-requests that communicate to the server which checkpoints the process reached).
So, as asked, I've setup a repro-case to be run in the VM and I've collected VM diagnostics ready to be tested and attached.
Does anyone know if there is some unspecified (or specified but buried in the documentation) limit for this? Thanks.
Github discussion link for further details, repro-case and so on: https://github.com/actions/runner-images/issues/12747
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
APNS
Xcode
User Notifications
Virtualization
The Files app in the iOS 18 beta simulator appears to be read-only. I am unable to:
create folders
copy files into it by dragging them from macOS
safe files from safari
I have been unsuccessful at finding a way to popular any file or folder in the Files app which is preventing me from testing some scenarios in my app where I import files using the files sheet.
The earliest I tried was beta 3 and it still persists in beta 7. The iOS 17 simulator works fine in comparison.
My mac is a 2019 macbook pro running Sonoma 14.5.
To reproduce:
New folder
Launch Files app in iOS simulator
Tap into "On my phone"
From the top menu tap "New Folder"
(nothing happens)
Download a file
Launch safari
Find a file like a PDF to download
Tap on the down arrow in the toolbar
Files opens up with the filename in the textfield at the bottom
The "Save" button is grayed out.
Copy from macOS
Open the Files app in iOS and browse to a local folder
drag a file from the macbook onto the simulator
the sheet appears with the filename in the text field
The "Save" button is grayed out
I have an iOS app with a QuickLook extension. I also added Apple Vision Pro in the target's General > Supported Destinations section. About one year ago, I was able to run the app on iPhone, iPad and Apple Vision Pro Simulators.
Today I tried running it again on Apple Vision Pro with Xcode 26.0.1, but Xcode shows this error:
Try again later. Appex bundle at ~/Library/Developer/CoreSimulator/Devices/F6B3CCA8-82FA-485F-A306-CF85FF589096/data/Library/Caches/com.apple.mobile.installd.staging/temp.PWLT59/extracted/problem.app/PlugIns/problemQuickLook.appex with id org.example.problem.problemQuickLook specifies a value (com.apple.quicklook.preview) for the NSExtensionPointIdentifier key in the NSExtension dictionary in its Info.plist that does not correspond to a known extension point.
I tried again later a couple times, even after running Clean Build Folder Immediately, without any change. I can reproduce this with a fresh Xcode project to which I add a Quick Look Preview Extension and Apple Vision Pro as a supported destination. The error doesn't happen when running on Apple Vision Pro (Designed for iPad) or iPad Pro 13-inch (M4) destinations. What is the problem?
I created FB20448815.
I am developing an app that uses CoreBluetooth to communicate with a proprietary piece of hardware. I would like to be able to write tests for it, but there does not seem to be any way to mock or simulate the presence of, for example a CBPeripheral object.
This library (https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock) almost does what I need, but it's not quite flexible enough. I think they have the right idea, but it doesn't seem to be actively maintained anymore.
This seems like a pretty big hole in the iOS SDK. Is there really not an officially supported way of testing BLE functionality?
I'm new to Xcode and decided to give it a try, however, I'm unable to preview even the default "hello, world" message.
I've tried downloading Xcode on the App Store on Mac and from the official website, but I couldn't go pass the "Preparing (Automatic) iPhone Simulator."
I've also tried the following line of code on Terminal, but nada:
xcrun simctl erase all
Here's what I see for almost two hours now (it makes no sense):
My system specs:
iMac Retina 4K, 21.5-inch, 2019, 3 GHz Intel Core i5 6-Core, Radeon Pro 560X 4 GB, 8 GB 2667 MHz DDR4 (two 4gb core each), 1TB SSD.
I've coded way bigger web projects using various applications, but Xcode can't even preview the sample file?
Please, help. I would really like to code using Swift. :)
Is anyone else having trouble with the Documentation in the latest Xcode beta? I can't get any UIKit documentation to appear. UIKit is completely missing from the table of contents too. I've tried deleting the documentation caches but it isn't helping.
Topic:
Developer Tools & Services
SubTopic:
Xcode
I'm trying to update the icon of my app for watchOS 26, and I'm having troubles providing both a layered Liquid Glass icon for watchOS 26 users and a pre-rendered bitmap icon (in various sizes) for watchOS 11 and older users. Whatever I do; I either get a blurry, scaled-down watchOS 26 icon on watchOS 11; or watchOS 11's bitmap icons on watchOS 26.
While I could get the wanted result on macOS 26 and iOS 26, I simply can't get an equivalent result with watchOS 26.