Search results for

A Summary of the WWDC25 Group Lab

10,088 results found

Post

Replies

Boosts

Views

Activity

Reply to Swift iOS iPadOS app for Smartcard Token PIV using CryptoTokenKit
Sorry I didn’t respond sooner. Forums had a bug where it was dropping notifications, and it looks like that’s what happened here )-: Fortunately we’ve just rolled out a fix for that bug (-: [quote='847936022, Deej620, /thread/725152?answerId=847936022#847936022, /profile/Deej620'] When attempting to call SecItemCopyMatching, I'm getting a -34018 missing entitlement error. [/quote] The answer here varies based on whether you’re targeting macOS or iOS. Let me summarise, starting with iOS: Every provisioning profile authorises access to com.apple.token. But you must claim that access by listing com.apple.token in your keychain-access-groups list. WARNING Adding items to keychain-access-groups can change your default keychain access group, and doing that unexpectedly is a common source of confusion. Read Sharing access to keychain items among a collection of apps for more on this. For macOS: It’s not possible to create a provisioning profile that authorises access to com.apple.token. Bu
Topic: Privacy & Security SubTopic: General Tags:
3w
Does Apple Spatial Audio Format documentation exist
The WWDC25 video and notes titled “Learn About Apple Immersive Video Technologies” introduced the Apple Spatial Audio Format (ASAF) and codec (APAC). However, despite references throughout on using immersive video, there is scant information on ASAF/APAC (including no code examples and no framework references), and I’ve found no documentation in Apple’s APIs/Frameworks about its implementation and use months on. I want to leverage ambisonic audio in my app. I don’t want to write a custom AU if APAC will be opened up to developers. If you read the notes below along with the iPhone 17 advertising (“Video is captured with Spatial Audio for immersive listening”), it sounds like this is very much a live feature in iOS26. Anyone know the state of play? I’m across how the PHASE engine works, which is unrelated to what I’m asking about here. Original quote from video referenced above: “ASAF enables truly externalized audio experiences by ensuring acoustic cues are used to render the audio. It’s composed of n
4
0
533
3w
Reply to Ditto cannot extract ZIP file into filesystem-compressed files
It's quite common for app bundles to be distributed in .zip files, and to be stored on-disk as filesystem-compressed files. However, having them both appears to be an edge case that's broken for at least two major releases! (FB19048357, FB19329524) Let me start with a more basic question, namely, what are you actually trying to do here? The filesystems support for compressed files is a fairly obscure implementation detail that we never formally documented and never intended for widespread use. Note, for example, that its implementation is incompatible with custom icons*. Similarly, support for them in the broader ecosystem is inconsistent, and copying them incorrectly will result in a non-functional file. That isn't an issue for the role the system intended them for**, but it is a problem in broader usage. *Compressed files repurposed the resource forks, while custom file icons use essentially the same resource fork-based architecture that they used on macOS Classic. **Basically, further reducing the size of
Topic: App & System Services SubTopic: Core OS Tags:
3w
Reply to How To Position Controls With SwiftUI
I personally find that placing precisely objects is a critical limit (or constraint) with SwiftUI. What I do (sometimes with mixed results) is to group objects in separate Views (red-bordered in the image). It makes it easier to position objects (with HStack / VStack) in each view and then position the views. Hope that helps.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
3w
AppIntentConfiguration WatchOS & iOS inconsistent
I'm having problems with my released app with iOS & WatchOS 26 support. I've added AppIntentConfiguration support in the WatchOS app such that users can configure the complication. My complications also support multiple families and so I have slightly different configuration options available if its in the .accessoryRectangular slot or the .accessoryCircular one. This works fine on Apple Watch when editing the Watch face. Here you can then select the configuration options fine and they are correct for the different variants. However on iOS when configuring in the Apple Watch app on iPhone, the different complication size is ignored and the same configuration options are offered meaning they are wrong for one of them. I created a sample project, here is the app intent code: struct TestWidgetConfigurationIntent: AppIntent, WidgetConfigurationIntent { static var title: LocalizedStringResource = New Widgets with Configuration static var description = IntentDescription(Lots of stuff.) static var isDiscoverable
1
0
109
3w
Bug Report: SwiftUI @State Array Assignment Fails to Trigger UI Updates. Presumably when lengths of the old and new arrays are the same.
Environment: — Xcode Version: [Current version] — iOS Version: [Target iOS version] — Swift Version: 6.0.3 — Platform: iOS Summary: Direct assignment of new arrays to @State properties sometimes fails to trigger UI updates, even when the arrays contain different data. The assignment appears to succeed in code but the UI continues to display stale data. Presumably when lengths of both arrays are the same. Assigning first empty array and then the new array fixed the issue. Expected Behavior: When assigning a new array to a @State property (self.stateArray = newArray), SwiftUI should detect the change and update the UI to reflect the new data. Actual Behavior: The assignment self.stateArray = newArray executes without error, but the UI continues to display data from the previous array. Debugging shows that self._stateArray (the underlying property wrapper) retains the old data despite the assignment. Minimal Reproduction Case: struct ContentView: View { @State private var items: [String] = [Old Item] va
1
0
87
3w
kTCCServiceSystemPolicyAppData warning from Transparency Consent and Control (TCC)
The problem is described in full with log output in #16844 We are having an issue with TCC prompting users for access to the app group container despite signing with entitlements following all guidelines. This is a regression from the Feb 2025 Changes discussed in App Groups: macOS vs iOS: Working Towards Harmony The problem can only be reproduced with Xcode 16.0 and later. The entitlements for the app include access for the group container with [Key] com.apple.security.application-groups [Value] [Array] [String] G69SCX94XU.duck The documentation notes the group name can be arbitrary, e.g. .. Cyberduck uses G69SCX94XU.duck by default. Interestingly enough the alert is not shown when a group name matching the bundle identifier is used, e.g. G69SCX94XU.ch.sudo.cyberduck.
6
0
404
3w
Reply to App Groups names are red
Let me reiterate that, if you want me to see your reply, it’s important that you reply as a reply rather than in the comments. unchecked the Enable Register App Groups for now. I think that’s a reasonable option while you focus on other stuff. However, you do have to be careful here. Specifically, check that your app’s provisioning profile authorises your use of this app group ID. When you set Enable Register App Groups, Xcode does that for you. If you disable Enable Register App Groups, it becomes your responsibility to do it. That’s generally not hard — just enable the App Group capability on your App ID — but it’s important to double that this flows through to final app’s provisioning profile, both in for development and distribution signing. Without that, macOS may end up presenting annoying app group authorisation alerts. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
3w
SF symbols not rendering in swiftui views
Summary: The minus.capsule and minus.capsule.fill SF Symbols do not render in my project. Other SF Symbols (e.g., plus.capsule and minus.circle) render correctly in the same context. Steps to Reproduce 1. Add an Image(systemName: minus.capsule) or Image(systemName: minus.capsule.fill) to a SwiftUI view. 2. Run the app on the latest macOS. Expected Result The minus capsule symbols should render consistently, similar to plus.capsule. Actual Result minus.capsule and minus.capsule.fill do not render at all. Additional Testing • Replaced minus.capsule with minus.circle: renders correctly. • Swapped the right-hand plus.capsule symbol in my slider with minus.capsule: the symbol fails to render in that position as well. That rules out clipping or layout issues.
2
0
94
3w
Widget with Core Data guidance
I have an app that has a Core Data store for dates with descriptions that I'd like to present in a widget with countdown calculations. In the app I have a button that just equates an active calculation to the currently selected item in the database (using an EnvironmentObject). I gather I can't use this mechanism inside a widget, right? The user could put tons of items into the database - so I'm sure I don't want to have an editable widget allowing them to pick. I suppose I could create an intent and allow an independent entering from the app - but that seems rather user hostile since they've already entered it for the app - and I'm still trying to support iOS15 which doesn't support that. I did create an App Group and have the Core Data store available from within the widget, but I don't see how to allow the user to choose which date is active. I also want multiple widgets to be able to point to different dates. Any help would be appreciated. Thanks!
3
0
252
3w
Designed-for-iPad apps on macOS: Print sheet fails to appear
Summary: When running our iPad app on macOS (“Designed for iPad”), invoking UIPrintInteractionController intermittently fails to show a working print sheet. The same code works reliably on iPad or iOS devices and also on macOS pre 26. This regression started after updating to macOS Tahoe Version 26.0 (25A354) Steps to Reproduce: Launch the attached minimal sample on macOS (Designed for iPad). Tap “Print plain text” Expected Results: The print panel should appear and discover AirPrint printers reliably, as on iPad/iOS or previous mac versions. Actual Results: On macOS, the panel fails to appear. Mac version: macOS Tahoe 26.0 (25A354) xCode version: 26.0 (17A324) Sample Reproduction Code: struct ContentView: View { var body: some View { Button(Print plain text) { printPlainText() } .buttonStyle(.borderedProminent) .padding() } func printPlainText() { let text = This is just a sample print guard UIPrintInteractionController.isPrintingAvailable else { NSLog(Printing not available on this device) return }
0
0
109
3w
Reply to Tahoe Launchpad
The removal of Launchpad from macOS has cost me a huge amount of wasted time. It is quite baffling why Apple's engineering team thought this was necessary. There is no scenario in which Apple's few predefined categories could possibly ever address the long tail of real world application categories and user workflows. This is a point I make in depth below. Also, I am now encountering a bug preventing me from searching for apps by name, even if I could remember the name of my 250+ native and web apps, so I have no other choice but to scroll through over 250 icons to find the app I'm looking for. I honestly do not understand what the rationale was for this change by Apple. Vital functionality that I relied on with minute-to-minute frequency was replaced with a fundamentally broken one that costs me minutes where it previously took seconds to find apps. In fact it should be obvious that predefined app categories could not possibly address real world use cases and and that forcing users into them would break more
4w
Reply to How can a student start learning Apple’s approach to design?
Hi Chase, I am delighted to hear that you are interested in joining us in the future. I had a similar dream at your age, and it appears that if you continue to pursue your goals, success will eventually come your way. To get started, I recommend learning about coding and installing Xcode on your computer. Additionally, there are numerous videos from WWDC that provide up-to-date information on the subject. I wish you the best of luck in your endeavors. WWDC Videos: https://developer.apple.com/wwdc25/ Albert Pascual
  Worldwide Developer Relations.
Topic: Design SubTopic: General
4w
Reply to Lock Contention in APFS/Kernel?
Let me start with the comparison here: Similar performance issues were reported in the past by a former Mercurial maintainer: https://gregoryszorc.com/blog/2018/10/29/global-kernel-locks-in-apfs/. Unfortunately, there are some fairly significant flaws in the analysis there. Picking one of his data points: $ time ./slow-readdir.py -l 12 ~/src/firefox ran 12 walks across 12 processes in 172.209s real 2m52.470s user 1m54.053s sys 23m42.808s Based on his overall article, I believe he thinks that test took ~23m when in fact it took ~3m. That is, the actual test time was: ...in 172.209s -> ~2.52 -> real 2m52.470s In general, that's what real means in most time tests -> how long did this test actually take. In terms of the difference in system time, that appears to have been due to an accounting issue in the kernel. Per the investigation that was done on the bug, this particular test script ended up having multiple threads blocked in the kernel (waiting on work to complete) and the kernel included those tim
Topic: App & System Services SubTopic: Core OS Tags:
4w
iOS 26 SwiftData crash does not happen in iOS 16
I have a simple app that makes an HTTPS call to gather some JSON which I then parse and add to my SwiftData database. The app then uses a simple @Query in a view to get the data into a list. on iOS 16 this works fine. No problems. But the same code on iOS 26 (targeting iOS 18.5) crashes after about 15 seconds of idle time after the list is populated. The error message is: Could not cast value of type '__NSCFNumber' (0x1f31ee568) to 'NSString' (0x1f31ec718). and occurs when trying to access ANY property of the list. I have a stripped down version of the app that shows the crash available. To replicate the issue: open the project in Xcode 26 target any iOS 26 device or simulator compile and run the project. after the list is displayed, wait about 15 seconds and the app crashes. It is also of note that if you try to run the app again, it will crash immediately, unless you delete the app from the device. Any help on this would be appreciated. Feedback number FB20295815 includes .zip file Below is the basic code (
4
0
164
4w