Hello, I am developing a macOS menu bar window-management utility (similar in functionality to Magnet / Rectangle) that relies on the Accessibility (AXUIElement) API to move and resize windows and on global hotkeys. I am facing a consistent issue when App Sandbox is enabled. Summary: App Sandbox enabled Hardened Runtime enabled Apple Events entitlement enabled NSAccessibilityDescription present in Info.plist AXIsProcessTrustedWithOptions is called with prompt enabled Observed behavior: When App Sandbox is enabled, the Accessibility permission prompt never appears. The app cannot be manually added in System Settings → Privacy & Security → Accessibility. AXIsProcessTrusted always returns false. As a result, window snapping does not work. When App Sandbox is disabled: The Accessibility prompt appears correctly. The app functions as expected. This behavior occurs both: In local builds In TestFlight builds My questions: Is this expected behavior for sandboxed macOS apps that rely on Accessibility APIs
Search results for
A Summary of the WWDC25 Group Lab
10,365 results found
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
During internal testing, we observed the following behavior and would appreciate clarification on whether it is expected and supported in production environments. When generating an elliptic-curve cryptographic key pair using kSecAttrTokenIDSecureEnclave, and explicitly specifying a kSecAttrAccessGroup, we found that cryptographic operations (specifically encryption and decryption) could be successfully performed using this key pair from two distinct applications. Both applications had the Keychain Sharing capability enabled and were signed with the same provisioning profile identity. Given the documented security properties of Secure Enclave, backed keys, namely that private key material is protected by hardware and access is strictly constrained by design, we would like to confirm whether the ability for multiple applications (sharing the same keychain access group and signing identity) to perform cryptographic operations with the same Secure Enclave–backed key is expected behavior on iOS. Specific
Topic:
Privacy & Security
SubTopic:
General
This is a screenshot from the Swift Task track in Xcode. I made these tasks with public actor ResourceManager { func foo() { for observer in observers { Task(name: ResourceManager notify observers) { await notification(observer) } } } } I am confused why each of the task is showing as a separate task in the task lifetime summary. Is there a way to queue the trace in Instruments into the fact that these are indeed the same task?
Problem Summary After upgrading to iOS 26.1 and 26.2, I'm experiencing a particle positioning bug in RealityKit where ParticleEmitterComponent particles render at an incorrect offset relative to their parent entity. This behavior does not occur on iOS 18.6.2 or earlier versions, suggesting a regression introduced in the newer OS builds. Environment Details Operating System: iOS 26.1 & iOS 26.2 Framework: RealityKit Xcode Version: 16.2 (16C5032a) Expected vs. Actual Behavior Expected: Particles should render at the position of the entity to which the ParticleEmitterComponent is attached, matching the behavior on iOS 18.6.2 and earlier. Actual: Particles appear away from their parent entity, creating a visual misalignment that breaks the intended AR experience. Steps to Reproduce Create or open an AR application with RealityKit that uses particle components Attach a ParticleEmitterComponent to an entity via a custom system Run the application on iOS 26.1 or iOS 26.2 Observe that particles render at
Problem Summary After upgrading to iOS 26.1 and 26.2, I'm experiencing a particle positioning bug in RealityKit where ParticleEmitterComponent particles render at an incorrect offset relative to their parent entity. This behavior does not occur on iOS 18.6.2 or earlier versions, suggesting a regression introduced in the newer OS builds. Environment Details Operating System: iOS 26.1 & iOS 26.2 Framework: RealityKit Xcode Version: 16.2 (16C5032a) Expected vs. Actual Behavior Expected: Particles should render at the position of the entity to which the ParticleEmitterComponent is attached, matching the behavior on iOS 18.6.2 and earlier. Actual: Particles appear away from their parent entity, creating a visual misalignment that breaks the intended AR experience. Steps to Reproduce Create or open an AR application with RealityKit that uses particle components Attach a ParticleEmitterComponent to an entity via a custom system Run the application on iOS 26.1 or iOS 26.2 Observe that particles render at
I am developing a simple watch app and I use my personal watch for development with Xcode. Personal watch is series 10 gps only. I have two other watches that I want to use for testing the app, but not needing them to be connected to Xcode. The test watches have cellular option, and I need a cell plan per watch because the watches need to be standalone, not counting initial setup. To get the standalone cell plan the watches need to be configured using AWFK. Here is what I have tried/current issues. I switch between all three watches on my phone using the watch app. Originally tried to put test watches in developer mode, thinking I would connect to Xcode, developer mode is not available when watch is setup using AWFK. Pushed the watch app to apple connect, setup TestFlight group, added the test users and my phone user, accepted invites TestFlight is installed on my phone, I see the testflight setup for the watch app I set a test watch using watch app on the phone, run install for the test app from Tes
Here is the code of my message extension, if that helps. I am indeed trying to write to the shared storage of the App Groups import os.log // Apple's modern, fast, privacy-safe logging system class NotificationService: UNNotificationServiceExtension { private let log = OSLog( subsystem: Bundle.main.bundleIdentifier!, category: pushnotificationsmessageextension ) var contentHandler: ((UNNotificationContent) -> Void)! // A mutable copy of the notification content — this is what we'll modify or save var bestAttemptContent: UNMutableNotificationContent? // Main entry point — called every time a push arrives with `mutable-content: 1` override func didReceive( _ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void ) { // Save the handler so we can call it later (required!) self.contentHandler = contentHandler // Make a mutable copy so we can modify title, body, attachments, etc. bestAttemptContent = request.content.mutableCopy() as? UNMutableNot
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
Tags:
I'm developing an app that receives push notifications, and writes the contents of the push notification to a shared location between the main app and a Notifications Message Extension, through App Groups. This all seems to work on my phone, with developer mode turned on, but when I archive my app as an Enterprise IPA and distribute it, the users can install the app on their phones and they receive the push notifications, but it doesn't appear that the message extension is running as my app displays the content of the shared data in the App Groups on the main screen and nothing is showing. I have tried on 3 phones, and it only works on the phone with developer mode turned on. I can't tell at this point whether it's because of a signing issue, or build phase order issue, or something else?
Trying to support undo & redo in an app that utilizes Swift Data and as with anything other than provided simplistic Apple demo examples the experience is not great. The problem: Im trying to build functionality that allows users to add items to an item group, where item and item group have a many-to-many relationship e.g. item group can hold many items and items can appear in multiple groups. When trying to do so with relatively simple setup of either adding or removing item group from items relationship array, I am pretty consistently met with a hard crash after performing undo & redo. Sometimes it works the first few undo & redos but 95% of the time would crash on the first one. Could not cast value of type 'Swift.Optional' (0x20a676be0) to 'Swift.Array' (0x207a2bc08). Where CodableStructModel is a Codable Value type inside Item. Adding and removing this relationship should be undoable & redoable as typical for Mac interaction and is supported by
Thanks for the post. Sorry for the delay. Very interesting and great question. For alarm-like functionality, local notifications can be paired with custom sounds. The default alarm sounds available on iOS devices are proprietary. This restriction ensures that these sounds remain exclusive to and maintain their intended user experience. As of now, there is no public API that allows developers to access or directly play the built-in iOS alarm sounds in their apps using AlarmKit or any other framework within the iOS SDK. Developers looking to implement alarm functionality in their apps can provide their own audio files. This means you can bundle custom sound files with your app or allow users to select from their own music library I think as well. In summary, as far as I know now, you are currently limited to using custom audio files for alarm sounds in apps, as there is no supported way to access the default iOS alarm tones programmatically. Resources: https://developer.apple.com/documentation/alarmkit
Topic:
Developer Tools & Services
SubTopic:
Instruments
1 - We implemented the code to upload still images. We would like to do the same for Live Photos, but we are not sure how to proceed since a Live Photo is composed of 2 resources that we would like to upload in the same job so that we keep the association between the 2 resources. I think your only option here is to process the assets as separate jobs and use the URL request to preserve the conceptual link between the assets— for example, embedding that information in the upload URL or in the URL metadata. 2 - Is there a way to synchronise the application and the extension so that the application would not process the same data or execute the same requests as the extension? For example: our application is working with tokens, and we would like to prevent those tokens from being consumed by the application and the extension at the same time. These issues are alluded to at the end of this section where it says: Important: Your extension needs a mechanism to track which assets you’ve already processed and detect
Topic:
Media Technologies
SubTopic:
General
Tags:
Although the application functions correctly when deployed locally to a physical iPhone using Flutter (direct debug/development build via Xcode), we are encountering the following issues only within App Store Connect / TestFlight: 1- Internal Testing Issue: After completing all required steps in App Store Connect and adding internal testers, testers are unable to install the app. TestFlight displays the error: “Could not install app. The requested app is not available or doesn’t exist.” 2- External Testing Issue: When attempting to add a processed build to an External Testing group (Public Link), App Store Connect returns the following message: “There was an error processing your request. Please try again later.” The build has successfully uploaded and processed, and is marked as Ready to Submit in TestFlight. These issues do not occur during direct device deployment and appear to be isolated to TestFlight / App Store Connect. We would appreciate guidance on how to solve this issue which is preventin
Topic:
App Store Distribution & Marketing
SubTopic:
TestFlight
Tags:
App Store Connect
TestFlight
Testing
I have recently added a SetFocusFilterIntent target extension to my app which is a system utility which goes into the menu bar(Application is agent = YES). I have followed the approach in the WWDC22 video introducing Focus Intent and I have created an App Groups to being able to make the Extension to communicate with my main app, however from when I did this sometimes when I run the app I do get this log line: Couldn't read values in CFPrefsPlistSource<0x97cd34700> (Domain: group.xxx.xxx.MyApp, User: kCFPreferencesAnyUser, ByHost: Yes, Container: (null), Contents Need Refresh: Yes): Using kCFPreferencesAnyUser with a container is only allowed for System Containers, detaching from cfprefsd Despite this the Focus mode integration is working correctly on my development Mac. However I used to Archive the app and then Copy the app to my MacBook but when I do that now my other Mac cannot open the app and it is giving me an error. If I revert this change then I can bring the app back to my other Mac a
Hi, I’m trying to integrate my iOS app with Shortcuts. My goal is: In the Shortcuts app → Create a shortcut → Select an image → Share the image directly to my app for analysis. However, when I try to add the “Share with App” / “Open in App” / “Send to App” action in Shortcuts: My app does NOT appear in the list of available apps. I want my app to be selectable so that Shortcuts can send an image (UIImage / file) to my app. What I have tried My app supports receiving images using UIActivityViewController and Share Extension. I created an App Intents extension (AppIntent + @Parameter(file)...) but the app still does not appear in Shortcuts “Share with App”. I also checked the Info.plist but didn’t find any permission related to Shortcuts. The app is installed on the device and works normally. My question What permission, Info.plist entry, or capability is required so that my app becomes visible in the Shortcuts app as a target for image sharing? More specifically: Which extension type should be used for receivi
Topic:
App & System Services
SubTopic:
Automation & Scripting
Tags:
Image I/O
Extensions
App Intents
Hello guys I’m unable to delete the Test Information and Beta App Information sections on Apple Store Connect. I need to remove them because the app transfer process requires it. I’ve already expired all builds, removed all testers and groups, and tried every possible solution I could find online, but nothing worked. I also contacted Apple Support, but the issue hasn’t been resolved. What should I do next?