Filed FB17873536 for this, posting here for reach.
I cannot create a provisioning profile to run my Mac Catalyst app on a macOS 26 VM for my project with automatically manage signing (Xcode Managed Profile) enabled. I keep getting an error that “There is a problem with the request entity A device with number '' already exists on this team.” Disabling the device in Certificates, Identifiers, & Profiles does not work; I get the prompt to register the device on the next build but it results in the same error. “Download Manual Profiles” does not work, either.
Additionally, in developer beta 2 (macOS build 25A5295e, Xcode build 17A5241o), I now get a second error message that Provisioning profile "Mac Catalyst Team Provisioning Profile: doesn't include the currently selected device "Virtual Machine" (identifier ).
Clearing out the existing files in ~/Library/Developer/Xcode/UserData/Provisioning Profiles/ didn’t work either.
Steps to reproduce:
Create and set up a macOS 26 VM in the latest version of UTM for Mac
Install Xcode 26 in the VM and sign into your Apple ID in Xcode preferences
Open a Mac Catalyst app’s Xcode project and attempt to build it
An alert comes up that the device is not registered in the developer account. Click the Register button to register it
The process fails with the error mentioned above and it’s impossible to build for Mac Catalyst after this point. (Sign to Run Locally is not an option for me because I use entitlements that remove that option)
I would appreciate any advice on how to get this working. Hopefully I will not have to create an entirely new macOS 26 VM. Thank you!
Mac Catalyst
RSS for tagStart building a native Mac app from your current iPad app using Mac Catalyst.
Posts under Mac Catalyst tag
86 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
I'm building and running from Xcode 26 to macOS 15.5. On launch, app crashes on start dynamic runtime linking with failure to find _LocationEssentials framework.
When I run my iOS app on a Mac using Mac Catalyst, several sharing options that show up on an iOS device in a share sheet are absent on the Mac. Clicking on Edit Extensions, I see Mail, Message and AirDrop, their switches are on and disabled. All three items show up when I share from Safari or Notes.
How can I make Mail, Message and AirDrop available?
For example, when sharing data, no share extensions are shown.
For text, only Simulator, Shortcuts and Copy are shown.
When exporting an icon using Icon Composer Beta for macOS 26, a light, dark and tinted versions for macOS are created, but I was not able to find how to use them on the Xcode Project. I also tried finding something pointing to that on documentation, but I was not able to find anything.
I see that system apps have light, dark and tinted versions on the first beta of macOS 26, which leads me to believe it would be possible for third-party apps to do that same.
I'm working on a catalyst video editor and I'm using my wacom graphic tablet to work. The wacom input gets translated into a pencil touch. Whenever I hold down a modifier (shift, cmd etc) the touch gets ended and also ends all gestures. The mouse (indirectPointer touch) doesn't exhibit this kind of behavior.
Is this expected behavior? If so is there a way to opt out? Any way to prevent this? This basically makes the typical transform gestures impossible to do when using the graphic tablet.
My app cannot be launched on some users' MacOS, it says "Library not loaded: /usr/lib/libc++.1.dylib".
"exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
"termination" : {"code":1,"flags":518,"namespace":"DYLD","indicator":"Library missing","details":["(terminated at launch; ignore backtrace)"],"reasons":["Library not loaded: \/usr\/lib\/libc++.1.dylib","Referenced from: <E4CB6764-8CB9-32E9-881B-252E2F3E0C4B> \/Applications\/myapp.app\/Contents\/MacOS\/myapp","Reason: tried: '\/System\/iOSSupport\/usr\/lib\/libc++.1.dylib' (no such file), '\/System\/Volumes\/Preboot\/Cryptexes\/OS\/System\/iOSSupport\/usr\/lib\/libc++.1.dylib' (no such file), '\/System\/iOSSupport\/usr\/lib\/libc++.1.dylib' (no such file, no dyld cache), '\/usr\/lib\/libc++.1.dylib' (no such file), '\/System\/Volumes\/Preboot\/Cryptexes\/OS\/usr\/lib\/libc++.1.dylib' (no such file), '\/usr\/lib\/libc++.1.dylib' (no such file, no dyld cache)"]},
User 1's environment: 2020 MacBook Air, M1, system version 15.4.
User 2's environment: 2020 MacBook Pro, M1, system version: 15.5.
I (and the people around me) cannot reproduce this problem. It can be reproduced on User 2's computer, but the performance is strange, sometimes good and sometimes bad. The app can be launched normally during the day, and it can also be launched normally after restarting the computer. But it cannot be launched from 21:00 to 22:00 at night, and the problem still exists even if the computer is restarted.
After some searching, I suspect that there is a bug in the dynamic linker cache mechanism of MacOS, but we cannot confirm it. According to the official documentation: https://developer.apple.com/documentation/macos-release-notes/macos-big-sur-11_0_1-release-notes
New in macOS Big Sur 11.0.1, the system ships with a built-in dynamic linker cache of all system-provided libraries. As part of this change, copies of dynamic libraries are no longer present on the filesystem. Code that attempts to check for dynamic library presence by looking for a file at a path or enumerating a directory will fail. Instead, check for library presence by attempting to dlopen() the path, which will correctly check for the library in the cache. (62986286)
I also tried to manually copy libc++.1.dylib to the above path, but these paths are read-only, and files cannot be copied into them even if SIP is turned off.
Is there any other way to fix or avoid this problem? Thank you.
Other similar questions:
https://developer.apple.com/forums/thread/756370
https://developer.apple.com/forums/thread/764824
Hi,
I have been trying to subscribe to brightnessDidChangeNotification (https://developer.apple.com/documentation/uikit/uiscreen/brightnessdidchangenotification) with my code:
var publisher = NotificationCenter.default.publisher(for: UIScreen.brightnessDidChangeNotification)
.map { _ -> Double in
return UIScreen.main.brightness
}
But it does seem that no such event is fired on Mac Catalyst 15.5. https://developer.apple.com/documentation/uikit/uiscreen/brightnessdidchangenotification claims that API is available since 13.1.
Could anybody tell me if I'm doing something wrong or if the API is not supported at the moment?
Thank you!
Bringing my iPad app to Mac Catalyst as iPad idiom. Primary interface is a UISplitViewController. Two things I think are bugs unless someone replies with a fix.
SplitViewController is setup in two column with left column as sidebar:
split.setViewController(primary, for: .primary)
split.setViewController(secondary, for: .secondary)
split.preferredDisplayMode = .oneBesideSecondary
split.preferredSplitBehavior = .tile
split.presentsWithGesture = true
#if targetEnvironment(macCatalyst)
split.primaryBackgroundStyle = .sidebar
split.displayModeButtonVisibility = .never
#endif
The displayMode button aligns vertically with the navigation bar and below the 3 window control buttons (close, minimize, full screen), whereas on other macOS apps using SplitViewController such as Apple Notes app, the displayMode button aligns vertically and just to the right of the the 3 window control buttons (close, minimize, full screen). I downloaded the Apple Example app called Menus that is supposed to be a prime example of a Mac Catalyst app, and I see author must have faced the same bug and instead created their own displayMode button and placed it on the UITitlebar's toolBar.
In my secondary ViewController which is a subclass of a UITableViewController, tapping a row, calls show and in a SplitViewController, that pushes another detailVC onto the Nav stack as expected. The UIWindowScene's UITitlebar which appears over the top of the secondary VC looks correct.
This detailVC is a subclass of a UITableViewController. Finally, tapping a row in the table of the detailVC calls show but this time, the ViewController is actually a UIHostingViewController wrapping a SwiftUI View. At this point the UIWindowScene's UITitlebar changes appearance and takes on the same lightened color similar to the sidebar (primary) appearance.
With UITitlebarTitleVisibility set to hidden and if I set the titlebar.toolbar to nil, (which removes the UITitlebar, there is no appearance issue.
Running on iPad, with no UITitlebar, there is no odd lightening experienced when the UIHostingController is shown. I think this has something to do with the UIHostingController within Mac Catalyst.
How does one check if a file descriptor is guarded? Is there any guarded FD numbers that are determinate? I've seen 12 being NPOLICY in a few things -- is there documentation for which FDs might be guarded? Thanks. The platform is Mac Catalyst.
Is it theoretically possible to:
Build an app with Mac Catalyst without the App Sandbox entitlement and
Distribute it outside the Mac App Store (w/ notarization)?
Thank you!
Topic:
App Store Distribution & Marketing
SubTopic:
General
Tags:
App Store
Mac Catalyst
Notarization
App Sandbox
My Objective-C Catalyst app when built with Xcode 16.x/iOS 18 does not have a visible Tab Bar when run on Sequoia. App starts up in first tab, but there is no way to access other tabs. The same app when run on macOS Sonoma (or macOS Catalina) has a normal Tab Bar.
The app has an initial View UITabBarController with 3 tabs. The main tab is a UiSplitViewController. Minimum macOS deployment 10.5.
If app is built on Sonoma with Xcode 15.x/iOS 17 the Tab Bar is normal on macOS Sonoma, Sequoia, and Catalina.
I've tried without success:
if (@available(macCatalyst 18.0, *)) {
self.tabBarController.tabBarHidden = false;
} else {
// Fallback on earlier versions
}
I wonder if this console log message has anything to do with the problem:
CLIENT OF UIKIT REQUIRES UPDATE: This process does not adopt UIScene lifecycle. This will become an assert in a future version.
I have an iOS app that includes a Photo Editing Extension and is optimized for Mac Catalyst so you can edit photos in the Photos app on your Mac. This has worked really well but now I am encountering an error alert trying to open the photo editing extension:
RBSLaunchRequest error trying to launch plugin com.company.TestEditor. TestPhotoEditor (B7A616A7-2 5A8-4E02-8B32-5CAB37C8B4B2): ErrorDomain=RBSRequestErrorDomain Code=5 "Launch failed." UserInfo={NSLocalizedFailureReason=Launch failed., NSUnderlyingError=0x7f08fafd0 {ErrorDomain=NSPOSIXErrorDomain Code=153 "Unknown error: 153" UserInfo={NSLocalizedDescription=Launchd job spawn failed}}}
Create a new iOS app project in Xcode
Create a new target and choose iOS > Photo Editing Extension
For both targets in the project, add Mac Catalyst as a supported destination
Run the app on My Mac (Mac Catalyst)
Open the Photos app, double click a photo, click Edit, click the more plugins button, and click TestPhotoEditor in the list
macOS 15.4.1 + Xcode 16.3
How can I get the macOS version from the Mac Catalyst version? We're building Info.plist files ourselves but we need a way to programatically (using shell scripts) derive the LSMinimumSystemVersion key needed from the iOS deployment target.
I have an iOS app which has an embedded Quicklook Extension that works perfectly - in the Files app on iPad/iPhone I can QuickLook view and edit custom file types without problems. However, when I run the app on a Silicon Mac using Mac Catalyst (or (Made For iPad)) while the Finder does recognise the custom file types (allowing "Open in…" or double-clicking to open) it does not show the Quick Look extension. How do I add Finder QuickLook extension functionality to a Mac Catalyst app?
Thanks
I have a Catalyst app on the App Store and I'm starting to get messages from users that the popover bubbles all over the app are without content. I see the error locally as well, but I don't know how to fix it.
I get the following warning in XCode when opening a popup:
UIScene property of UINSSceneViewController was accessed before it was set.
Hello, I have encountered a question that I hope to receive an answer to. Currently, I am working on a music project for Mac Catalyst and need to enable music files such as FLAC to be opened by right clicking to view my Mac Catalyst app. But currently, I have encountered a problem where I can see my app option in the right-click open mode after debugging the newly created macOS project using the following configuration. But when I created an iOS project and converted it to a Mac Catalyst app, and then modified the info.plist with the same configuration, I couldn't see my app in the open mode after debugging. May I ask how to solve this problem? Do I need to configure any permissions or features in the Mac Catalyst project? I have been searching for a long time but have not found a solution regarding it. Please resolve it, thank you.
Here is the configuration of my macOS project:
CFBundleDocumentTypes
CFBundleTypeExtensions
flac
CFBundleTypeIconSystemGenerated
1
CFBundleTypeName
FLAC Audio File
CFBundleTypeRole
Viewer
LSHandlerRank
Default
Note: Sandbox permissions have been enabled for both the macOS project and the iOS to Mac Catalyst project. The Mac Catalyst project also has additional permissions for com. apple. security. files. user taught. read write
When trying to generate build for mac catalyst using xcodebuild
xcodebuild archive -scheme MYSDK -destination="generic/platform=macOS,variant=Mac Catalyst" -archivePath archives/maccatalyst.xcarchive SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES SUPPORTS_MACCATALYST=YES
Xcode warnings about multiple matching destinations
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:x86_64, id:XX, name:My Mac }
{ platform:macOS, arch:x86_64, variant:Mac Catalyst, id:XX, name:My Mac }
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:macOS, name:Any Mac }
{ platform:macOS, variant:Mac Catalyst, name:Any Mac }
Here native macOS is displayed first instead of Mac Catalyst. I have tried using "generic/platform=macOS,variant=Mac Catalyst,name=Any Mac". But the same issue occurred.
xcode version: Version 16.2 (16C5032a)
Currently I came across an issue in mac catalyst project. All the buttons in my project are not visible, they are in their actual positions and also clickable and performing their tasks as assigned but they are not visible.
When Iam doing:
crossButton.setImage(UIImage(named: "CrossComMac"), for: .normal)
Button does not contain image
While in the below code, image is visible but Iam not able to resize it.
crossButton.imageView?.image = UIImage(named: "CrossComMac")
Also title of the button is not visible too.
Anything related to button in my mac catalyst project is not visible.
Main issue:
Button's image is visible in Xcode running project
Button's image is not visible in build project...(funny thing right)
I have created a Mac Catalyst version of the same app, and it was transferred from an old account to a new one. However, the Mac Catalyst build has been stuck in progress for several days when attempting to notarize it.
After many days, I got the rejection with the following error:
Team is not yet configured for notarization. Please contact Developer Programs Support at developer.apple.com under the topic Development and Technical / Other Development or Technical Questions.
I have already tried to create a new developer ID certificate, but it still has the same issue. On the other hand, the iOS app is working fine and has been published in the App Store.
Could you please assist us in resolving this issue as quickly as possible? Your prompt help would be greatly appreciated.
We are developing an MacOS app from our iOS app using MacCatalyst.
If I press long on the app icon on the Dock, a list of recent files appears.
If I tap one one of these files nothing happens. I would expect the scene delegate function:
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>)
would be called but it is not. Can somebody maybe explain what I am missing here?
The list of recent files also appears in the Menu under File > Open recent files. There I can tap on a file and it it is opened correctly using the scene delegate method mentioned above.
The files can also be opened with the app using the Finder, so the associated file types with the app are correct.