Search results for

A Summary of the WWDC25 Group Lab

10,365 results found

Post

Replies

Boosts

Views

Activity

Reply to HKLiveWorkoutBuilder begincollection freezes in WatchOS simulator
I figured out that the app im developing not the sample project was causing the HealthKit service to corrupt which subsequently caused the freeze in HKLiveWorkoutBuilder. Below is the code for how i end and start workouts in my app. I cant figure out why healthkit gets corrupted. func start() async throws { guard !sessionState.isActive else { return } let configuration = HKWorkoutConfiguration() configuration.activityType = .swimming configuration.locationType = .outdoor configuration.swimmingLocationType = .openWater if extendedSession == nil { extendedSession = WKExtendedRuntimeSession() } session = try HKWorkoutSession(healthStore: store, configuration: configuration) builder = session?.associatedWorkoutBuilder() builder?.dataSource = HKLiveWorkoutDataSource(healthStore: store, workoutConfiguration: configuration) session?.delegate = self builder?.delegate = self print(💧 Submersion Manager: (manager == nil ? Unavalible : Running)) //session?.startActivity(with: .now) try await withTimeout(for: .seconds(10
Dec ’25
Is AgeRangeService / Declared Age Range capability required for a utility app?
Hello, I need clarification regarding the new Declared Age Range requirement. App Name: Hanna Lab Our app is a utility/scientific BLE app that connects to instruments, reads measurement values, and displays logs in a table or a Graph. We do not collect age data or provide any age-restricted content. I would like to confirm: Is AgeRangeService mandatory for an app that does not use age-based features? Do we need to add the Declared Age Range capability in Xcode → Signing & Capabilities for such a utility app? Thanks for any guidance.
0
0
180
Dec ’25
Reply to KeyChain Sharing with App Extensions
Hi Apple team, Thanks for the follow up. Here are the details you requested: Platform: iOS (running on iPhone hardware; built with Xcode 15, iOS 17 SDK). Extension type: Network Extension provider packaged as an app extension (appex) within the main app target. Keychain configuration: The main app and the extension both have the Keychain Sharing capability enabled with the same access group (for example, ABCD1234.com.example.shared). We also tried the common app group and specifying the access group via kSecAttrAccessGroup, including variations such as $AppIdentifier.KeyChainSharingGroup. Error observed: When the extension attempts to access the shared keychain, SecItemCopyMatching returns status 25291 (errSecNotAvailable), which Xcode reports as No keychain is available. The same code and access group work from the containing app. Could you advise whether additional entitlements are needed for Network Extension providers on iOS, or if there are specific packaging or provis
Dec ’25
Reply to "App would like to access data from other apps" How to suppress this repeated permission prompt?
This alert is part of the app group container protection feature. For more background, see: The WWDC video I linked to in Trusted Execution Resources App Groups: macOS vs iOS: Working Towards Harmony [quote='808931021, Ankita13188, /thread/808931, /profile/Ankita13188'] I am attempting to read and write data to an Office Group Container [/quote] I don’t understand “Office Group Container”. Is this a container for an app group from some other third-party developer? Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Topic: App & System Services SubTopic: Core OS Tags:
Dec ’25
Buttons on tvOS with text are blurred
When adding buttons to a sheet, on tvOS the text is blurred in the buttons, making it illegible. Feedback: FB21228496 (used GPT to extract an example from my project for a test project to attach here) // ButtonBlurTestView.swift // Icarus // // Test view to reproduce blurred button issue on tvOS // import SwiftUI struct ButtonBlurTestView: View { @State private var showSheet = false @State private var selectedTags: [Int] = [] @State private var newTagName: String = // Hardcoded test data private let testTags = [ TestTag(id: 1, label: Action), TestTag(id: 2, label: Comedy), TestTag(id: 3, label: Drama), TestTag(id: 4, label: Sci-Fi), TestTag(id: 5, label: Thriller) ] var body: some View { NavigationStack { VStack { Text(Button Blur Test) .font(.title) .padding() Button(Show Test Sheet) { showSheet = true } .buttonStyle(.borderedProminent) .padding() Text(Tap the button above to open a sheet with buttons inside a Form.) .font(.caption) .foregroundColor(.secondary) .multilineTextAlignment(.center) .padding() }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
1
0
151
Dec ’25
KeyChain Sharing with App Extensions
Hi, We are trying to use Apple Security API for KeyChain Services. Using the common App Group : Specifying the common app group in the kSecAttrAccessGroup field of the KeyChain query, allowed us to have a shared keychains for different apps (targets) in the app group, but this did not work for extensions. Enabling the KeyChain Sharing capability : We enabled the KeyChain Sharing Ability in the extensions and the app target as well, giving a common KeyChain Access group. Specifying this in the kSecAttrAccessGroup field also did not work. This was done in XCode as we were unable to locate it in the Developer portal in Indentifiers. We tried specifying $AppIdentifier.KeyChainSharingGroup in the kSecAttrAccessGroup field , but this did not work as well The error code which we get in all these 3 cases when trying to access the Keychain from the extension is error code 25291 (errSecNotAvailable). The Documentation says this error comes when No Trust Results are available and prin
4
0
153
Dec ’25
Reply to Transporter App for Windows
I team! Do we have any updates regarding this? We've installed the last version of the Transporter APP available from the official site and checked the documentation (https://help.apple.com/itc/transporteruserguide/en.lproj/static.html). But seems very outdated regarding the last changes performed with Apple Connect API authentication. Many of companies that work with hybrid platforms (highcode/lowcode) doesn't have any MacOS systems with Transporter app, that allow deliver ipa files to Apple Store Connect (for test or production). It would be important to cover this scenarios. We already tried some commands, but seems that somethink is still missing. Executing comands like this ones always retrieved errors: iTMSTransporter.cmd -upload -assetFile .mobile-appapp.ipa -apiKey -apiIssuer -sigingKey -v eXtreme -assetDescription [2025-12-02 15:34:24 WET] DEBUG: Setting System property: DataCenters = contentdelivery02.itunes.apple.com [2025-12-02 15:34:24 WET] DEBUG: Setting System property: DataCenters.host = con
Dec ’25
Reply to App Sandbox denies mach-register for Developer ID signed app but allows it for Apple Distribution signed app
The canonically correct way to manage Mach service names [1] in a sandboxed app is to make the name a ‘child’ of an app group ID. That’s what I recommend that you do here. Temporary exception entitlements are a reasonable option when: You’re not targeting the Mac App Store No other option is available to you I talk more about that in The Case for Sandboxing a Directly Distributed App. But in this case you are targeting the Mac App Store and there is a better option available, and hence my recommendation. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com [1] This includes XPC named endpoints. I recommend that folks not use Mach directly, although I realise that’s not something under your control here.
Topic: App & System Services SubTopic: General Tags:
Dec ’25
Reply to Xcode is a mess!
If you have multiple issues, it’s generally best to put them in different threads. That’s because different folks have different expertise, and it’s unlikely that any one person will be able to help you with all of your issues at once. In this case, I can address your second question: [quote='808920021, chps67, /thread/808920, /profile/chps67'] In Xcode 16 why is it no longer possible to arrange my files as I did before [/quote] I’m not 100% sure I understand this, but I suspect it’s because Xcode now has two ways to organise items in the Project navigator: Groups, as used by older versions of Xcode Folders, which are new [1] With groups you can explicitly manage the position and order of items in the Project navigator. With folders, Xcode does that implicitly, replicating the file system hierarchy and showing all the items alphabetically. Folders have some really important advantages — most notably, they radically reduce the number of project file merge conflicts — but if you don’t like the
Dec ’25
Reply to Xcode is a mess!
Well, that's your opinion. I've managed to release a number of Swift apps without seeing the issues you describe. I've got no idea why you can't organise your folders properly. What's the problem? You ask why it's no longer possible to do something, but you haven't really explained what it is that you're missing. You can still right-click a file or folder and create a new group, new group from selection, new folder, and new folder from selection. And you can drag files and folders onto the Project pane and choose how they're added. I don't understand what it is that you're having a problem with? Rather than posting here, why not raise feedback tickets and explain where you're seeing issues? Give Apple a record of the problems and a chance to fix them. You can do that at: https://feedbackassistant.apple.com/ then post the FB number(s) here. Also, Xcode 26 is out, so you could try that out and see if any of your issues are fixed.
Dec ’25
App Sandbox denies mach-register for Developer ID signed app but allows it for Apple Distribution signed app
I'm working on a multi-process macOS application (based on Chromium/Electron) that uses Mach ports for inter-process communication between the main app and its helper processes. Background I have an MAS build working successfully via TestFlight for internal testing. However, public TestFlight testing requires Apple review, and while waiting for that review, I wanted to provide a directly distributable build for external testers. I attempted to create a Developer ID signed build with App Sandbox enabled, expecting it to behave similarly to the MAS build. The Problem With App Sandbox enabled (com.apple.security.app-sandbox) and identical entitlements, I observe different behavior depending on the signing certificate: Apple Distribution certificate: App launches successfully, mach-register and mach-lookup work Developer ID certificate: App crashes at launch, mach-register is denied by sandbox The Console shows this sandbox violation for the Developer ID build: Sandbox: MyApp(13605) deny(1) mach-register XXXXXXXX
2
0
144
Dec ’25
NetworkConnection throws EINVAL when receiving ping/pong control frames
Summary NetworkConnection in iOS 26 Network framework throws POSIXErrorCode(rawValue: 22): Invalid argument when receiving WebSocket ping (opcode 9) or pong (opcode 10) control frames. This prevents proper WebSocket keep-alive functionality. Environment iOS 26.0 (Simulator) macOS 26.1 Xcode 26.0 Note: This issue was initially discovered on iOS 26 Simulator. The same behavior was confirmed on macOS 26, suggesting a shared bug in the Network framework. The attached sample code is for macOS for easier reproduction. Description When using the new NetworkConnection API introduced in iOS 26 or macOS 26, the receive() method throws EINVAL error whenever a ping or pong control frame is received from the server. This is a critical issue because: WebSocket servers commonly send ping frames to keep connections alive Clients send ping frames to verify connection health The receive callback never receives the ping/pong frame - the error occurs before the frame reaches user code Steps to Reproduce Create a WebSock
5
0
230
Dec ’25
Reply to DTLS Handshake Fails When App Is in Background – Is This an iOS Limitation?
Problem Summary: When the app is in the background and a VoIP PushKit notification arrives, we attempt to establish a DTLS handshake over our existing socket. Adding one thing to what Quinn suggested, the first thing I would actually look at here is making sure you understand exactly what actually happened when this failed. In particular, one issue I've seen multiple times is assuming that an issue like this was caused by a network/API problem, when what actually happened was simply that your app suspended before it actually did any useful work. This happens in VoIP apps because the age (introduced in iOS 4) of the VoIP background category means that it's tended to use much longer wake times (~30s) than it really should. Putting that in concrete terms, the system has three different “VoIP Push systems (PKPushRegistry, NEAppPushManager, PTChannelManager) which use a very similar architecture, but which actually have different app suspension behavior. That difference shouldn't matter because we've alwa
Dec ’25