Search results for

A Summary of the WWDC25 Group Lab

10,368 results found

Post

Replies

Boosts

Views

Activity

Should SwiftUI view models in Swift 6 be both @Observable and @MainActor?
Hi, In the WWDC25 session Elevate an app with Swift concurrency (timestamps: 8:04 and later), the StickerViewModel is shown annotated with @Observable but not @MainActor. The narration mentions that updates happen on the main thread, but that guarantee is left implicit in the calling code. In Swift 6, though, one of the major benefits is stronger compiler enforcement against data races and isolation rules. If a view model were also annotated with @MainActor, then the compiler could enforce that observable state is only updated on the main actor, preventing accidental background mutations or updates that can cause data races between nonisolated and main actor-isolated uses. Since @Observable already signals that state changes are intended to be observed (and in practice, usually by views), it seems natural that such types should also be main-actor isolated. Otherwise, we’re left with an implicit expectation that updates will always come from the main thread, but without the compiler’s help in enforcin
6
0
286
Aug ’25
Reply to Integrating Apple Fitness+ Workouts – How to Retrieve Metadata?
I shared a similar concern on Reddit and got a reply suggesting there may be an unpublished API. Note that I went one better than filing. Feedback. My Apple Fitness+ data, is part of my Health Data. As such this is not a new feature request but a data access issue. I callled Apple Support they agreed , telling me I was not the first complaining about this. I was issued a case number. You can find my Reddit thread using my case number. Here’s my post: I’ve been using Fitness+ for years and only just realized my HealthKit data is incomplete. Calories/duration sync fine, but instructor, episode number, and workout subtype (Upper/Lower/Total) are missing. That info is clearly stored (it shows up in the Fitness+ Summary tab) but Apple withholds it from HealthKit and data exports. I called Apple Support and they confirmed I’m not the first person to ask. They gave me a case number: 102672392454. 👉 If this bugs you too, please file feedback here: apple.com/feedback or call support. The more users who push,
Aug ’25
Reply to How do you observe the count of records in a Swift Data relationship?
There are some subtle things that determine if a change on a SwiftData model is observable, as discussed in this WWDC25 session (starting from around 14:00.) Your code snippet doesn't show where the folder in FolderView is from and how you add a new item. If you can share a runnable code snippet that demonstrates the issue, I'd be able to figure out why folder doesn't trigger an update. Best, —— Ziqiao Chen  Worldwide Developer Relations.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Aug ’25
Reply to XCode reverts CoreData's .xccurrentversion
I did some of investigation of this issue because I ran into the same problem when trying to convert an old project from groups to folders. I discovered what is happening is that Xcode 16 changes the model's current version to the last one alphabetically. I was able to reproduce it this way: Create a brand new, folder-based, Xcode project. Add an xcdatamodeld with one entity. Add a new model version and name it a. Make it current. Quit Xcode. Relaunch Xcode. Expected result: The a model version should still be current. Actual result: The original model version is current. I was able to reproduce with Xcode 16.2 and 16.4. It appears to be fixed in Xcode 26 beta 6. Based on these steps, one workaround appears to be to name the model versions alphabetically. Another workaround is to keep the xcdatamodeld file in a group, not a folder. And of course if you can switch to Xcode 26, then you don't need to workarounds above.
Aug ’25
Having serious trouble with replaykit
Hi everyone, I'm totally new to this and am just having fun making an app for myself. I'm attempting to get a broadcastupload extension working, but whatever i do i cant get the replaykit to work. I keep getting this error in xcode: Provisioning profile Project v6 Broadcast Upload Development doesn't include the com.apple.developer.replaykit.broadcast entitlement. What I've tried: Created separate App IDs for each target (Explicit App IDs, not Wildcard) Enabled App Groups capability on all three App IDs in Apple Developer Portal Selected the correct App Group for all App IDs Added App Groups capability in Xcode for all targets and all build configurations Created entitlements file with com.apple.developer.replaykit.broadcast: true for Broadcast Upload extension Recreated provisioning profiles multiple times Used manual code signing with correct certificates I'm completely lost. I reached out directly to apple developer support and they just told me to come here... Any help would be
0
0
206
Aug ’25
Possible typo in concurrency diagram (WWDC25: Elevate an app with Swift concurrency)
Hello, While watching WWDC25: Code-along: Elevate an app with Swift concurrency at timestamp 25:48, I noticed something in the slide/diagram that might be incorrect. The diagram shows ExtractSticker twice, but based on the code context and spoken explanation, I think it was meant to be ExtractSticker and ExtractColor. Reasoning: The surrounding code and narration describe the use of async let and a Sendable Data object. From the flow, one task extracts a sticker while the other extracts a color, so it seems like the diagram is inconsistent. I do understand that with @concurrent, having two ExtractSticker operations on the same Data is technically possible (with two concurrent process executing their respective ExtractSticker) — but that would be a different meaning than what the talk was describing. Since concurrency is already a subtle and error-prone topic, I thought it was worth pointing this out. If I’m mistaken, I’d love clarification. Otherwise, this could be a small correction to keep things a
2
0
1.8k
Aug ’25
App rejected due to 3.1.1 - Business - Payments - In-App Purchase
Guideline 3.1.1 - Business - Payments - In-App Purchase, as my app currently allows users to purchase digital content (courses) using an external payment system. I am working to comply with Apple’s requirements by integrating In-App Purchase for all digital content within the app. My app contains approximately 100,000 individual courses, and I am seeking guidance on how to effectively implement In-App Purchase for such a large number of items. Creating 100,000 separate In-App Purchase products in App Store Connect seems impractical due to the scale and potential limitations. I would like to explore feasible solutions, such as: Using a subscription model to provide access to all courses. Creating category-based bundles (e.g., Programming, Design) to group courses. Implementing a dynamic purchase system where users can select specific courses after a single In-App Purchase transaction, managed server-side. Could you please advise on the best approach to manage In-App Purchase for 100,000 individual cou
1
0
124
Aug ’25
Reply to Icon composer icon contains alpha channel upload error
Through trial and error I have found what causes this issue (at least one cause.- maybe there are more). The problem for me was caused by the combination of two things: Having the Blur option switched on for one of the groups in the Icon Composer file For that group, having at least one SVG sitting near the edge of the canvas. I'm not sure exactly where the line is, but if your SVG is in the middle, it doesn't trigger the issue - even with Blur turned on. It only shows up once your SVG is near the edge. So for me, the fix was to turn off the blur setting on the group that had an SVG near the edge.
Aug ’25
Reply to Audio Unit v3 host v2 third party plugins
auval -a shows me following: auval -a AU Validation Tool Version: 1.10.0 Copyright 2003-2019, Apple Inc. All Rights Reserved. Specify -h (-help) for command options aufx bpas appl - Apple: AUBandpass aufx dcmp appl - Apple: AUDynamicsProcessor aufx dely appl - Apple: AUDelay aufx dist appl - Apple: AUDistortion aufx filt appl - Apple: AUFilter aufx greq appl - Apple: AUGraphicEQ aufx hpas appl - Apple: AUHipass aufx hshf appl - Apple: AUHighShelfFilter aufx lmtr appl - Apple: AUPeakLimiter aufx lpas appl - Apple: AULowpass aufx lshf appl - Apple: AULowShelfFilter aufx mcmp appl - Apple: AUMultibandCompressor aufx mrev appl - Apple: AUMatrixReverb aufx nbeq appl - Apple: AUNBandEQ aufx nsnd appl - Apple: AUNetSend aufx nutp appl - Apple: AUNewPitch aufx pmeq appl - Apple: AUParametricEQ aufx raac appl - Apple: AURoundTripAAC aufx rogr appl - Apple: AURogerBeep aufx rvb2 appl - Apple: AUReverb2 aufx sdly appl - Apple: AUSampleDelay aufx tmpt appl - Apple: AUPitch aufx vois appl - Apple: AUSoundIsolation aumf Al
Topic: Media Technologies SubTopic: Audio Tags:
Aug ’25
Updated my iPhone--now none of my testflight builds appear! Please help!
I am a recently joined developer. However, I have 5 app builds, and 3 are in live in the App Store. I recently updated from iPhone 13 mini to iPhone 16e. I am logged into iCloud with my personal Apple ID, but in media & purchases, I am logged in with my Apple dev ID (email has my company domain). For some reason, only my oldest app build is visible in testflight on my iPhone. Logging in on MacBook, I see all 5 apps and current builds. Under testflight tab there, the correct group with my email (same as developer account ID) is listed as invited. Yet, none are visible in my iPhone testflight. Clicking on the invite email gives Couldn't Load App This invitation cannot be accepted because your Apple Account, (redacted) has already been associated to this app. Does anyone, please, have any advice???
0
0
115
Aug ’25
Model w/ Guardrails Disabled Still Frequently Refuses to Summarize Text
Foundation Models are driving me up the wall. My use case: A news app - I want to summarize news articles. Sounds like a perfect use for the added-in-beta-5 no guardrails mode for text-to-text transformations... ... and it's true, I don't get guardrails exceptions anymore but now, the model itself frequently refuses to summarize stuff which in a way is even worse as I have to parse the output text to figure out if it failed instead of getting an exception. I mostly worked that out with my system instructions but still, the refusing to summarize makes it really tough to use. I instructed the model to tell me why it failed if that happens. Examples of various refusals for news articles from major sources: The article mentions Visual Lookup but does not provide details about how it integrates with iOS 26. The article includes unsafe content regarding a political figure's potential influence over the Federal Reserve board, which is against my guidelines. the article contains unsafe content. The article is biased
8
0
925
Aug ’25
Provisioning Profile Missing com.apple.developer.alarmkit Entitlement – No AlarmKit Capability in Developer Portal
Hello everyone, I’m working with AlarmKit (iOS/iPadOS 26) and encountering a critical blocker. On the simulator, after adding NSAlarmKitUsageDescription to Info.plist, AlarmKit functions as expected—no entitlement issues. However, when building to a physical device, Xcode fails with: “Provisioning profile … doesn’t include the com.apple.developer.alarmkit entitlement.” The core issue: there is no AlarmKit capability visible under App ID settings or provisioning profiles in the Developer Portal. Thus, this entitlement cannot be enabled or included in a profile. Steps taken so far: Reviewed WWDC25 AlarmKit session and documentation. Reviewed Apple Developer documentation on entitlements and provisioning. Verified there's no AlarmKit toggle or capability in the Developer Portal (Certificates, Identifiers & Profiles > Identifiers). Submitted multiple Feedback requests via Feedback Assistant, but received no technical resolution. Questions: Is there meant to be a separate AlarmKit entitlement (dist
3
0
330
Aug ’25
Reply to Where's the replacement for Quartz Debug?
Hello, Quartz Debug is available as an additional tools package for Xcode. For example, Additional Tools for Xcode 26 beta 6 contains: This package includes audio, graphics, hardware I/O, and other auxiliary tools. These tools include AU Lab, OpenGL Driver Monitor, OpenGL Profiler, Pixie, Quartz Debug, CarPlay Simulator, HomeKit Accessory Simulator, IO Registry Explorer, Network Link Conditioner, PacketLogger, Printer Simulator, 64BitConversion, Clipboard Viewer, Crash Reporter Prefs, Dictionary Development Kit, Help Indexer, and Modem Scripts.
Aug ’25
Reply to SwiftData crash when switching between Window and ImmersiveSpace in visionOS
Nothing I can say for sure unfortunately. The error message seems to indicate that the model container was changed and so the model context lost the link to a back store. (That can't explain why accessing title is fine however.) You can probably try with creating a (singleton) model container shared across the whole app and passing it to your window group with .modelContainer(sharedModelContainer) to see if that changes anything. Best, —— Ziqiao Chen  Worldwide Developer Relations.
Aug ’25