Search results for

A Summary of the WWDC25 Group Lab

10,091 results found

Post

Replies

Boosts

Views

Activity

Best practice to prevent users from switching between subscriptions in the same group?
Hello everyone, For example, our app currently has one subscription group in App Store Connect with 5 plans (2 annual, 2 monthly, and 1 quarterly). By default, users can go into Apple Subscriptions in Settings and freely switch between all of these plans. However, our business requirement is to only allow users to stay on one annual plan and one quarterly plan. We don’t want them to switch to the other plans. My questions are: Is there any best practice or recommended approach to restrict subscription switching within the same group? Would removing the unwanted products from sale be the correct approach, or are there any risks/downsides with this method? Has anyone faced a similar situation and found a practical solution? Any guidance or shared experience would be greatly appreciated. Thanks!
4
0
107
Sep ’25
Error accessing backing data on deleted item in detached task
I have been working on an app for the past few months, and one issue that I have encountered a few times is an error where quick subsequent deletions cause issues with detached tasks that are triggered from some user actions. Inside a Task.detached, I am building an isolated model context, querying for LineItems, then iterating over those items. The crash happens when accessing a Transaction property through a relationship. var byTransactionId: [UUID: [LineItem]] { return Dictionary(grouping: self) { item in item.transaction?.id ?? UUID() } } In this case, the transaction has been deleted, but the relationship existed when the fetch occurred, so the transaction value is non-nil. The crash occurs when accessing the id. This is the error. SwiftData/BackingData.swift:1035: Fatal error: This model instance was invalidated because its backing data could no longer be found the store. PersistentIdentifier(id: SwiftData.PersistentIdentifier.ID(backing: SwiftData.PersistentIdentifier.PersistentIdentifierBacki
1
0
130
Sep ’25
Failed to sync capability identifiers, Apple 403 detected - Access forbidden
Hey can someone suggest how to fox this error? I checked with my Team Admin and all seems correct but still getting this error. Might be related: Error started popping up when we added IOS extension and App groups in our app ✖ Failed to sync capability identifiers Apple 403 detected - Access forbidden. This request is forbidden for security reasons - You are not allowed to perform this operation. Please check with one of your Team Admins, or, if you need further assistance, please contact Apple Developer Program Support. https://developer.apple.com/support
0
0
183
Sep ’25
Reply to SMAppService Sample Code seems broken
It does seem to be a permissions issue. If I revert back to putting the service in /Library/LaunchAgents and call SMAppService.agent(plistName: com.xpc.example.agent.plist) as demonstrated I can establish the XPC session and the code works as intended. That makes my claims of brokenness thoroughly, regretably invalid. It works, it's just not a complete example. Once I change the Copy File phase to throw the build product into /Library/LaunchDaemons and call SMAppService.daemon(plistName: com.xpc.example.agent.plist)instead (including passing the.private` flag when establishing the session), all the trouble begins. I manually did a chmod 600 and chown root on the service binary and the plist but launchd doesn't like that any better. I'm completely ruling out any .plist errors since I have not changed a single thing in that file and the same exact file works as a LaunchAgent. If I try to register the (root owned and non-group/world readable) plist manually then this happens: % sudo launchctl load /Appl
Sep ’25
Reply to Navigation Title no longer showing for first Tab in iOS/iPadOS 26
iOS 26 Navigation Title Not Displaying - Solution Problem Description After updating to iOS 26 beta, navigation titles stopped displaying in some of our SwiftUI views, while others continued to work. The affected views showed no navigation bar - the title, large title display mode, and toolbar items were not visible. This behavior is different from iOS 18, where the same code displays navigation titles as expected. Affected Configuration iOS Version: iOS 26 beta (all current betas through beta 7) SwiftUI: NavigationStack with .navigationTitle() and .navigationBarTitleDisplayMode(.large) Specific Pattern: Views where ScrollView or Form is the direct child of the view body The Change in Behavior In iOS 26, when a view's body directly returns a ScrollView or Form, the navigation title doesn't appear. Here's an example of code that displays the navigation title in iOS 18 but not in iOS 26: struct DashboardView: View { var body: some View { ScrollView { LazyVStack { // Your content here } } .navigationTitle(Dashbo
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Sep ’25
Reply to VPN application and user certificates using VPN Profile
I’m presuming you’re targeting iOS or one of its child platforms here. The story is different on macOS. [quote='800040021, tverroman, /thread/800040, /profile/tverroman'] 1- What entitlements do we need? Do we need additional entitlements except com.apple.developer.networkingextension and com.apple.managed.vpn.shared? [/quote] Neither of those are valid entitlement names O-: When building an app with an NE provider, you need the com.apple.developer.networking.networkextension entitlement (note that you have the wrong spelling). This is restricted but not managed. Any developer can use it. To support managed configuration, you need access to the com.apple.managed.vpn.shared keychain access group. [quote='800040021, tverroman, /thread/800040, /profile/tverroman'] 2- What is the process to [access the] com.apple.managed.vpn.shared [keychain access group]]? [/quote] See #9 in Network Extension Framework Entitlements. [quote='800040021, tverroman, /thread/800040, /profile/tverroman'] 3- Is ADP …
Sep ’25
Reply to App Groups names are red
It’s better to reply as a reply, rather than in the comments; see Quinn’s Top Ten DevForums Tips for this and other titbits. I am using macOS style that starts with Team ID OK. The Xcode App Group editor is not fully up to speed when it comes to macOS-style app group IDs. The screen shot of your provisioning profile shows the it’s correctly authorising you to use any group matching 2V________.*. And the App Groups editor is showing that you claim two of those groups. That’s all good. Note Regarding the group.com._.MySecurtiyAppGroup, it’s presence isn’t a problem. You’re not claiming access to that group, because the checkbox next it in the App Groups editor isn’t checked. And it’s fine for the profile to authorise you to use groups that you don’t then claim. I suspect that the red indicates that the app group ID you’re claiming isn’t literally in the app group ID listed in the profile. With iOS-style app groups
Sep ’25
Reply to How to use an Intune-delivered SCEP certificate for mTLS in iOS app using URLSessionDelegate?
Right. System credentials go into a keychain access group that you don’t have access to. That’s why Safari and SFSafariViewController work, but your code fails. This has been a problems for a long time [1] but we finally have a solution, namely, the ManagedApp framework. This allows your app to receive credentials from your MDM system securely. AFAIK there’s no integration between this and SCEP, so you’d need to update your server to accept these client identities in addition to the SCEP ones. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com [1] Check out the publication date on QA1745 Making Certificates and Keys Available To Your App!
Topic: Privacy & Security SubTopic: General Tags:
Sep ’25
iOS 18.x iPhone 15, & 15 ProMax Buttons/Labels Disappear
Only people using iPhone 15 and iPhone 15Pro (don't know about iPhone 15 plus or iPhone 15 pro max) are having problems with my App. All seems fine on 13, 14 and 16 as well as iPad The app is in testflight now. I cannot replicate the issue in MAC via virtual iPhone 15 , 15 plus, pro, or promax. What I see happening - it looks like users are seeing labels disappear, sometimes buttons are disappearing on the 15 pro and 15. I have an ingredient selection page where you can select the ingredients that you have. These are outlined and grouped to make choosing ingredients intuitive. I have a profile selector where you can choose by flavor, strength, body or mood. At the bottom I have three buttons , button one lets you choose if drinks are sorted or strictly matched. The last button allows the user to see the drinks they can make based on ingredients they have.This is done by matching the ingredients with a locally placed drinks list which contains a drink id, drink name, ingredients and profile informatio
0
0
116
Sep ’25
iOS 26 beta: Enterprise-distributed apps fail to launch (NSPOSIXErrorDomain Code=85) while Xcode-installed builds run
Environment Devices: e.g., iPhone 12 mini, iPhone 16 (multiple units) OS: iOS 26 beta 2 and beta 4 (23A5297m) Distribution: Apple Enterprise Program (In-House), deployed via MDM InstallApplication Tooling: Xcode (latest available for iOS 26 betas) Summary Apps signed for Enterprise (In-House) distribution install successfully on iOS 26 betas via MDM, but terminate immediately on launch. The same builds run if installed from Xcode on the same devices. This is a regression from pre-iOS 26 versions where Enterprise builds installed via MDM launched normally. Steps to Reproduce Archive an iOS app and export for Enterprise (In-House) distribution. Deploy the .ipa via MDM using InstallApplication to a device on iOS 26 beta (e.g., 23A5297m). Tap the app icon to launch. Actual Result The app quits instantly on launch. System logs show launchd/runningboard errors, including NSPOSIXErrorDomain Code=85 (“Bad executable (or shared library)”): runningboardd(RunningBoard)[34]: Process start failed with Error Domai
0
0
888
Sep ’25
How to use an Intune-delivered SCEP certificate for mTLS in iOS app using URLSessionDelegate?
I am working on implementing mTLS authentication in my iOS app (Apple Inhouse & intune MAM managed app). The SCEP client certificate is deployed on the device via Intune MDM. When I try accessing the protected endpoint via SFSafariViewController/ASWebAuthenticationSession, the certificate picker appears and the request succeeds. However, from within my app (using URLSessionDelegate), the certificate is not found (errSecItemNotFound). The didReceive challenge method is called, but my SCEP certificate is not found in the app. The certificate is visible under Settings > Device Management > SCEP Certificate. How can I make my iOS app access and use the SCEP certificate (installed via Intune MDM) for mTLS requests? Do I need a special entitlement, keychain access group, or configuration in Intune or Developer account to allow my app to use the certificate? Here is the sample code I am using: final class KeychainCertificateDelegate: NSObject, URLSessionDelegate { func urlSession(_ session: URLSes
3
0
802
Sep ’25
How do I update the list of valid redirect URLs for Sign In With Apple for Web?
I've been using Sign In with Apple for Web for the last six months, and it works well enough. Now, I'm updating the domain of the main application (we got the .com! yeah!) However, I can't find a way in the configuration UI to update the allowed redirect URLs for the application. I go to Identifiers -> My App -> Capabilities -> Sign In with Apple -> Edit button. It just allows me to edit whether this is a primary ID, or grouped ID, plus a callback URL (which I'm not currently using.)
0
0
566
Sep ’25