Search results for

A Summary of the WWDC25 Group Lab

10,225 results found

Post

Replies

Boosts

Views

Activity

Broadcast Upload Extension not work in Apple Vision Pro, throw throw "getMXSessionProperty unsupported"
I am working on Screen Record function in Apple Vision Pro, when I use broadcast upload extension, after I click record button, the XCode console show the exception: <<<< FigAudioSession(AV) >>>> audioSessionAVAudioSession_CopyMXSessionProperty signalled err=-19224 (kFigAudioSessionError_UnsupportedOperation) (getMXSessionProperty unsupported) at FigAudioSession_AVAudioSession.m:606 we create and config the project as flow: Create a Apple Vision Project. Create a Broadcast Upload Extension Target. Add App Group for Project Target and Extension Target, both use the same identifier. Add Main Camera Access, Passthrough in Screen Capture Capabilities for all targets. Add NSScreenCaptureUsageDescription, NSMicrophoneUsageDescription in Plist. Add record button in view Run debug in Apple Vision Pro device, after click record button, throw the exception.
0
0
53
4d
IAP Phantom Error
Trying to test IAP in sandbox. I created the test group and tester accounts. Accepted the invite downloaded the app. Signed into to sandbox in settings with the tester account. In app the purchases are failing and throwing my catch error message product couldn't be found. I decided to test it from settings/ sandbox/ manage/ initiate purchase/ but I've been getting can't complete transaction. Something went wrong, ant this transaction couldn't be completed. Try again later since last week. I reached out to dev support over the phone then email and they couldn't or wouldn't provide assistance. I asked my senior at work she took a look at it and confirmed I created the IAP correctly and that my sandbox account could make test purchases in apps she make but couldn't get mine to work. The storekit test work fine in xcode I just don't know what to do now.
0
0
31
4d
DTLS Handshake Fails When App Is in Background – Is This an iOS Limitation?
Hello, We are facing an issue with performing a DTLS handshake when our iOS application is in the background. Our app (Vocera Collaboration Suite – VCS) uses secure DTLS-encrypted communication for incoming VoIP calls. 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. However, the handshake consistently fails unless the app is already in the foreground. Once the app is foregrounded, the same DTLS handshake logic succeeds immediately. Key Questions: Is performing a DTLS handshake while the app is in the background technically supported by iOS? Or is this an OS-level limitation by design? If not supported, what is the Apple-recommended alternative to establish secure DTLS communication for VoIP flows without bringing the app to the foreground? Any guidance or clarification from Apple engineers or anyone who has solved a similar problem would be greatly appreciated. Thank you.
0
0
76
4d
Issue with iOS group entitlements being recognized
I am making an iOS step counting app and I have included a widget in the design. I would like to get the widget to pull data from the main app to display step count etc so I created a bundle id for the widget and have been trying to use a group id to link them together. The group capabilities for both seem to be set up/enabled properly with the same App Groups id, but I've been getting an error in xcode which says, 'Provisioning Profile: BUNDLE_ID doesn't include the com.apple.developer.security.application-groups entitlement.' Try Again But the identifiers do have the App Group id enabled. I have tried automatic signing, manual signing with generated profiles, unchecking and rechecking auto-signing, removing and re-adding the group capability. Creating a new bundle id from scratch, creating a new group id from scratch. Always I get the error. I've really pulled my hair out troubleshooting this and would appreciate support. I'm happy to answer an
0
0
165
5d
ASWebAuthenticationSession.start() does not display authentication UI on macOS (no error, no callback)
Hello Apple Developer Community, I'm experiencing an issue on macOS where ASWebAuthenticationSession fails to display its authentication window. The session is created successfully and start() returns true, but: no UI is shown, presentationAnchor(for:) is never invoked, the completion handler is never called, and no errors appear in Console.app or Xcode logs. This happens both when using the session via a Flutter plugin and when calling ASWebAuthenticationSession directly from Swift. Environment macOS 14.6 (Sonoma) Xcode latest stable Target: macOS 10.15+ App type: sandboxed macOS app, hardened runtime enabled The project also includes a Login Item (SMAppService) target Redirect URI scheme: myapp-auth://callback Problem Description When I trigger authentication, the logs show: [AuthPlugin] Starting ASWebAuthenticationSession... After that: no authentication sheet appears, presentationAnchor(for:) is never called, the completion handler is not invoked. The main window is visible and active when the method is c
0
0
131
5d
Reply to Live Activities Push-to-Start flows
@bradpriddy Thank you for the post and the link to the code, this is really good with a great description as well as the comprehensive list of devices where the device fails to receive a push-to-start token. I believe is a bug however, regrettably, I am not an expert in the APN start token and update token. However, I believe the most expedient course of action, to resolve the issue is to submit a bug report with a zip file containing the code you have provided and a concise summary of the problem. Once you open the bug report, please post the FB number here for my reference. If you have any questions about filing a bug report, take a look at Bug Reporting: How and Why? Albert Pascual
  Worldwide Developer Relations.
5d
Reply to Provisioning Profile Not Including Push Notifications Capability
There are two factors in play here, the Apple Developer website and your third-party tooling. Let’s separate them. Try this: In Certificates, Identifiers, and Profiles section of the Developer website, create a new App ID. I’d like you to share info about this App ID, so choose bundle ID that you’re comfortable posting here. During the creation process, enable the Push Notifications capability. Back in Certificates, Identifiers, and Profiles, create a new provisioning profile for that App ID. At the first screen, select iOS App Development. Check the entitlement authorised by that profile. I just did that here and this is what I see: % security cms -D -i Test808162_Dev.mobileprovision | plutil -p - { … Entitlements => { application-identifier => SKMME9E2Y8.com.example.apple-samplecode.Test808162 aps-environment => development com.apple.developer.team-identifier => SKMME9E2Y8 get-task-allow => 1 keychain-access-groups => [ 0 => SKMME9E2Y8.* 1 => com.apple.token ] } … } As you c
6d
Reply to Contrast for texts in widgets with image backgrounds transparent mode
Are you using @Environment(.widgetRenderingMode) var widgetRenderingMode already? If not, add that to your widget view, and change how the widget looks depending on the various values of widgetRenderingMode, i.e.: var body: some View { ZStack { switch renderingMode { case .fullColor: Text(Full color) case .accented: ZStack { Circle(...) VStack { Text(Accented) .widgetAccentable() Text(Normal) } } case .vibrant: Text(Full color) default: ... } } } Also, on images, there's a modifier: .widgetAccentedRenderingMode() with options like .accentedDesaturated. Take a look at how each of those values affects your widget, and you might find out the right combination that works in each of the various Home Screen modes. Note that this is only available from iOS 18 onwards. Also note (from the dev documentation) if the Image is a subview for a group that has widgetAccentable(true) applied, this modifier may conflict. It's quicker to check the various looks in Xcode previews than it is to build and deploy to an iP
6d
Reply to Check whether app is built in debug or release mode
Earlier I wrote: But, honestly, it sounds like a fun weekend project And indeed it was (-: Pasted below is some iOS code that is able to detect how your code is signed using only public APIs. To do this, it uses a sneaky combination of XPC loopback and XPC peer requirement checking. This code comes with a bunch of caveats. Read the doc comment before you use it [1]. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com [1] By my count the doc comments represent well over half the total number of lines (-: import Foundation extension CheckSelfEntitlement { /// Checks whether the current process claims the get-task-allow /// entitlement. /// /// - warning: As explained below, you shouldn’t use this routine but /// instead should use ``isGetTaskAllowTrue()``. This routine exists solely /// to illustrate the following point. /// /// This routine checks for the presence of the entitlement, rather than /// checking for it being present with a particular
1w
Siri can’t place calls while device is locked
Hello, I’m developing a third-party VoIP app called Heyno and trying to support Siri-initiated calls so they behave like WhatsApp / FaceTime, especially from the lock screen. Target behavior From the locked device, the user says: “Hey Siri, call using Heyno” Expected result: • System CallKit audio-call UI appears. • No “continue in ” sheet, no forced unlock or foregrounding. • Our app handles the VoIP leg in the background via CXProviderDelegate. WhatsApp already does this with: “Hey Siri, call on WhatsApp” I’m trying to reproduce that behavior for Heyno using public APIs. I have followed the SiriKit + CallKit VoIP docs but cannot get a clean Siri → CallKit → app flow from the lock screen without either: Being forced into .continueInApp (unlock + foreground), or Hitting CallKit transaction errors when starting the call from the app in response to the intent. Current implementation Intents extension (INStartCallIntentHandling) • resolveContacts(for:with:) normalizes to E.164 and returns INPersonResolutionRes
0
0
129
1w
Feedbacks for DeclaredAgeRange - missing platform support
I've been writing about the DeclaredAgeRange a bit on LinkedIn and now it is time to take to the developer forums. In my efforts to prepare my apps for new local requirements, I've run across some rough edges. The DeclaredAgeRange API is missing on several platforms, and extension types. First and foremost, watchOS. An Apple Watch is a clear single user platform and for standalone apps, the DeclaredAgeRange being absent is felt by developers. FB20954931 - DeclaredAgeRange: Framework not available on watchOS making compliance a challenge for watchOS standalone apps In the same vein of thinking, while users on Apple Vision Pro are far fewer numbers than Apple Watch, it is also a miss. The tricky part would be testing on the simulator. So far I haven't gotten the simulator and sandbox testing to work and give real values across any platform. I don't think an Apple Store will let me try my app out via TestFlight on their devices and they're still too expensive to reasonably buy for most developers. Too bad Feedba
0
0
65
1w
Reply to Access Main Camera not working in VisionOS 26.1
Hi @Ewan_Ke Thanks for the reply. We pushed a small refactor to the sample yesterday. Here's the diff. I recommend applying the changes. It's worth calling out that the changes would not cause the behavior you reported, but they will make your app better. Changes Summary This patch addresses camera feed handling and removes unnecessary scene phase restart logic. Files Modified 1. CameraFeed.swift Added flush check before processing sample buffers to prevent decoding issues if preview.sampleBufferRenderer.requiresFlushToResumeDecoding { preview.sampleBufferRenderer.flush() } 2. CameraSessionManager.swift Changed restart() method visibility to private Was: func restart() async Now: private func restart() async 3. MainCameraView.swift Removed unused @Environment(.scenePhase) property Removed .onChange(of: scenePhase) modifier that was calling sessionManager.restart() when returning from background Rationale Restarting CameraSessionManager after the app is backgrounded is excessive. Instead the code shou
Topic: Spatial Computing SubTopic: ARKit Tags:
1w
Reply to Apple-hosted managed asset pack not found on macOS
[quote='866998022, imaier, /thread/807154?answerId=866998022#866998022, /profile/imaier'] Does it need the is-Beta-App flag? [/quote] No. My expectation is that this wouldn’t be set. And yes, that flag is primarily associated with TestFlight. [quote='866998022, imaier, /thread/807154?answerId=866998022#866998022, /profile/imaier'] The code signing info from launchctl procinfo looks exactly like yours [/quote] Interesting. If, yesterday, you’d made me guess as to this result, I would’ve guessed the opposition. This results rules out my main theory as to what’s going on, namely that your app group was causing your entitlements to get invalidated. This is something I talk about in the Entitlements-Validated Flag section of App Groups: macOS vs iOS: Working Towards Harmony. And that leaves me out of ideas. My best guess right now is that this problem is the result of the different install machinery used on iOS and macOS. Well, the lack of install machinery on macOS, where Xcode just constructs t
1w
Reply to Structured Concurrency with Network Framework Sample
[quote='866975022, nikhil2701, /thread/807854?answerId=866975022#866975022, /profile/nikhil2701'] What options do I have with NetworkConnection in that case? [/quote] Use TLS-PKI. To start you out, lemme point you at two posts: TLS for App Developers TLS For Accessory Developers The first defines key terminology. The second offers some suggestions for how to deploy TLS in local environment. While TLS-PSK is an option in that context, it’s not required. Indeed, most of that post covers options that use TLS-PKI. Regarding the better path and viability handlers, these are conceptually the same as the equivalent constructs in the old APIs, so you can look for information about those old APIs and map that to this API. The better path handler is typically not necessary in a peer-to-peer context. It’s more commonly used to handle the switch between WWAN and Wi-Fi. See Extra-ordinary Networking > Network Interface Techniques > A Better Path. OTOH, a viability handler is a good idea in most cases. I actually hav
1w
Reply to DEXT (IOUserSCSIParallelInterfaceController): Direct I/O Succeeds, but Buffered I/O Fails with Data Corruption on Large File Copies
Hi Kevin, The data corruption issue has been resolved! Special thanks for asking the key question: So what's IS there? This prompted us to shift our focus from high-level hash verification to inspecting the raw bytes written to the disk. This investigation revealed that the root cause was not related to cache flushing, but rather a hardware limitation regarding single transfer lengths. Here is a summary of our findings and the solution: By using a Python script to verify the data on disk byte-by-byte, we discovered: When macOS coalesced writes into 2MB chunks (as we had previously set maxTransferSize to 128MB), data corruption consistently began exactly at Offset 1MB + 16KB within the command (manifesting as 0x00 or garbage data). The LSI 3108 controller/firmware seems cannot correctly handle a single SCSI command with a data length exceeding 1MB in the DEXT environment. We implemented a two-layer fix: In UserGetDMASpecification, we explicitly set maxTransferSize to 1MB (1,048,576 bytes). This forces
Topic: App & System Services SubTopic: Drivers Tags:
1w