Search results for

A Summary of the WWDC25 Group Lab

10,365 results found

Post

Replies

Boosts

Views

Activity

Reply to Accessing Built-In iOS Alarm Sounds When Using AlarmKit
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
Dec ’25
Reply to Background Upload Extension
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:
Dec ’25
Safely updating an FSKit module via the Mac App Store
I'm trying to test the update process for an app containing an FSKit module that I'm distributing on the Mac App Store. (I'm also distributing the same app directly with Developer ID, but here I'll focus on App Store because that's the behavior I've been looking at first.) To do that I'm using an internal tester group on TestFlight and then testing an update with TestFlight. Below is the behavior I'm seeing on macOS 15.7.2 (24G325). I've noticed that if an app update is triggered while a disk is mounted using the FSKit extension, the disk is automatically unmounted without warning (FB21287341). That's already undesirable itself in my opinion, but on top of the unmount, there are two other problems: That unmount doesn't seem to be a clean unmount and doesn't call functions like synchronize (FB21287688). Now, in my case, my app only provides read-only access, so that doesn't actually matter much in my case. However, I'd imagine if I were to add write access at some point in the future, this would go fr
2
0
172
Dec ’25
Reply to Customizing section titles in the Shortcuts app (Favorites / Recents style)
Thanks a lot @DTS Engineer for your response — that solved my issue! I was able to implement it successfully, and everything works as expected now. I’m also sharing a small code example along with a screenshot in case it helps others who come across the same question. AppShortcut( intent: ResumePlaybackIntent(), phrases: [ Reprendre la lecture de (.$resumeVideo) avec (.applicationName), ], shortTitle: Reprendre la lecture, systemImageName: play.circle, parameterPresentation: .init( for: .$resumeVideo, summary: Summary(Reprendre la lecture de (.$resumeVideo)), optionsCollections: { OptionsCollection( ResumeVideoQuery(), title: Reprendre la lecture, systemImageName: play.circle ) } ) ) Really appreciate your help!
Dec ’25
Unexpected behavior with multiple apps installed which use shared groups
If I have two iOS apps, with bundle ids com.mycompany.A and com.mycompany.B, and they both have the shared group id of group.com.mycompany.B, then they can read/write data to same file (in shared defaults or, for example, a Realm database saved to the same shared group location). What I have noticed is that if both apps get installed and some data X written to shared defaults (but data which isn't accessed by both apps i.e. if only app A uses this data), then if app A is deleted and reinstalled then X is not deleted in this situation (unless both apps A and B are deleted). I guess that is to be expected as they both use the same group id and the OS won't clear that area out unless both apps are deleted. However I think I am seeing a situation where if app A has group.com.mycompany.A as its group and app B has group.com.mycompany.B as its group, then this is still the same situation - data written by app B for doesn't get deleted if only app B is deleted/reinstalled
2
0
78
Dec ’25
Reply to StoreKit 2 Returns 0 Products - Subscriptions “Ready to Submit” in App Store Connect
I am experiencing the exact same issue. I have two subscription groups each with two products and StoreKit fails to load a single product correctly. I have done this countless times before and know what I am doing. There appears to be something wrong going on with App Store Connect currently thats preventing things from working. This needs to be investigated ASAP!
Dec ’25
Desperate with constant Guideline 1.1 Rejection and possible unfair treatment
Hi everyone, I am really not sure where else to go for a piece of mind because our recent review experience has been far from clear (and probably fair). We are a photo editing app developers who deal with AI models, effects and transformations on a constant basis. I believe last year we (like many other apps in the category) introduced effects that get two people in different photos and unite them in one cute/fun/cozy/emotional picture. Be it a couple, a mother and daughter - you name it. Of course all the templates are pre-set, there is no option for users to generate any scene by text-to-image or image-to-image model. Otherwise it would be unsafe. When submitting our app to review in May, 2025 we first faced the situation that this kind of effects are not welcome because of: Guideline 1.1 - Safety - Objectionable Content The app references or includes features that some users may find objectionable or could be used to create objectionable content. Specifically: The app includes templates for generating cont
1
0
76
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
Can multiple Apps in the same App Group share Asset Packs?
Hello, I have an Asset Pack that's a database. I need to use it in 2 apps. I'm curious at the expected functionality of cross app Asset Pack distribution as I've seen conflicting behavior. (1) Each app is required to have its own unique Background Assets Target. (2) Uploading the asset pack requires the App ID to be included. (3) I'm able to access the Asset Pack of App #1 inside of App #2 by using AssetPackManager.shared.ensureLocalAvailability(of:) with local testing (Not TestFlight) This is a technical question as originally I planned to duplicate the upload of the Asset Pack to both individual apps.
1
0
83
Dec ’25
Flutter iOS - EXC_BAD_ACCESS crash on cold start after app was killed, affects ~1-2% of users
Question: How to prevent Flutter app crash on iOS 18 during cold start when iOS traverses view hierarchy before Flutter engine is fully initialized? Help needed: Looking for a way to either delay iOS view hierarchy traversal or ensure Flutter is fully initialized before iOS lifecycle callbacks fire. Problem Summary Our Flutter app crashes on cold start for approximately 1-2% of iOS users. The crash occurs specifically on iOS and only under these exact conditions: When crash happens: User opens app and uses it normally ✅ User minimizes app (goes to background) ✅ User returns to app from background ✅ (works fine) User kills app from app switcher (swipe up to close) User taps app icon to launch again → CRASH ❌ Key observations: Crash is intermittent - app may open on 2nd, 3rd, or 5th attempt 100% reproducible on affected devices by repeating kill→launch cycle ~98% of users have no issues Environment Flutter: 3.38.3 Crash Logs (from Sentry) Crash Type 1: Stack Overflow (most common) OS Version: iOS 18.7.
Topic: UI Frameworks SubTopic: UIKit
1
0
172
Dec ’25
Monthly subscriptions immediately fail with "purchase cancelled" while yearly subscriptions work fine
I'm experiencing an issue where monthly and family monthly subscriptions fail immediately with purchase cancelled in TestFlight, while yearly and family yearly subscriptions work correctly. Setup: All 4 products in same subscription group All show Ready to Submit status Using react-native-iap with StoreKit 2 Testing in TestFlight sandbox The Problem: Yearly subscriptions work fine Monthly subscriptions fail immediately with E_USER_CANCELLED (no dialog appears, user didn't cancel) What I've verified: No active subscriptions (getAvailablePurchases() returns empty) No pending transactions Same subscription group for all products Product IDs match App Store Connect Code is identical for all products Error: E_USER_CANCELLED fires immediately when calling requestPurchase() for monthly products, but yearly products proceed normally. Questions: Why would monthly fail while yearly works (same group, same config)? Could this be sandbox state corruption for monthly products? Should I delete/re
1
0
104
Dec ’25
Custom libnss module development - alternative to /etc/nsswitch.conf
I am an open source developer, who just switched to macOS a few weeks ago. I am basically looking for an alternative to Linux' /etc/nsswitch.conf. Not for custom DNS resolution, that's an easy problem to solve, but for users / groups / hosts resolution via custom network modules. Basically looking for a way how I can hook up into the OS in kind of the same way as an LDAP client would do, and provide my own NSS modules. Just for reference, I am developing rauthy which can do PAM authn / authz in combination with rauthy-pam-nss. It works perfectly fine on Linux systems, and I now want to make it work on macOS as well. I already know that macOS is running its mDNSResponder for DNS instead of having the nsswitch.conf, but I have not found an answer for users, groups and hosts.
2
0
145
Dec ’25
Reply to iPhone 15 Pro Max Fails to Establish Connection with MT7682 IoT Device’s AP Hotspot (Affecting Network Provisioning)
Based on log analysis, we suspect the root cause is as follows: During the connection authentication phase, the EAPOL packet sent by the MT7682 has a Group Key ID of 0, while the iPhone 15 Pro series does not support a Group Key ID of 0. This causes the encrypted DHCP Offer packet replied by the MT7682 in the subsequent DHCP phase to fail decryption, resulting in the phone never obtaining an IP address. The issue will not be triggered if the AP is unencrypted. However, we would like to know if there is a corresponding setting on the iPhone to enable support for this feature (Group Key ID=0).
Dec ’25
iOS 26.1 | WebKit renders an emoji for the list disclosure-closed icon
As of iOS 26.1, Safari and WebKit views have an issue when rendering the html tag. The disclosure-closed icon / character appears as an emoji arrow ▶️ instead of the unicode character ▸ (U+25B8 - Black Right-Pointing Small Triangle) For example: Summary Additional details.... This wasn't the case in iOS 26.0 / iOS 18. From what I can observe it seems ▶ (U+25B6 - Black Right-Pointing Triangle) may be used in iOS 26.1 which renders as the emoji ▶️ on iOS (at least as far back as iOS 18). The only workaround I found for the moment is to specify explicit CSS to revert back to using the ▸ (U+25B8 - Black Right-Pointing Small Triangle) details > summary { list-style-type: ▸ ; } details[open] > summary { list-style-type: ▾ ; } Is this expected? I've filed a feedback for this FB20997955. Thanks!
1
0
620
Dec ’25