Search results for

“A Summary of the WWDC25 Group Lab”

10,635 results found

Post

Replies

Boosts

Views

Activity

Question about MFi token access
Hi all, Our company is applying for the Find My certification for our smartwearable product. Now we submitted the product plan and it's approved. The lab asked us to get the token but we searched on internet and the documents about it are limited. The CSR has approved and we already had .pem and .key file. I wonder what should we do next. Any helps are appreciated
1
0
225
Dec ’25
Subscription Group Remains as Prepare for Submission
I'm ready to submit a new app with 3 subscription plans. But the status of the group remains 'Prepare for Submission.' And it won't change. All the individual subscription plans have the 'Ready to Submit' status. I have triple-checked individual plans to see if there is anything missing. No. Nothing is missing. There are no pending business contracts to review, either. I have even deleted an existing group and created a whole new subscription group. And I still end up with this prepare status. Am I the only one having this subscription group difficulty? One thing that I realize is that the status appears as 'Ready to Submit' on individual subscription plans. But their respective localization pair of display name and description get the Prepared status. The display name and the description fields are both filled for all three plans. What a nice, merry, merry Christmas. I don't know what else I can do to resolve this Prepared madness. I've been stuck for 4 hours.
2
0
355
Dec ’25
Reply to Navigation title flickers when tab is changed when used with a List / Form
Summary This is not a bug Closed Feedback Concept TabView needs to be the outermost container. NavigationStack should be in the Tab contents. Fixed Code struct ContentView: View { @State private var selectedTab = TabItem.red var body: some View { TabView(selection: $selectedTab) { ForEach(TabItem.allCases, id: .self) { tab in Tab(tab.rawValue, systemImage: tab.systemImageName, value: tab) { NavigationStack { List { Text(tab.rawValue) } .navigationTitle(selectedTab.rawValue) } } } } } }
Topic: UI Frameworks SubTopic: SwiftUI
Dec ’25
When using Promotional Offers to upgrade a subscription, a prompt appears indicating an expiration date for upgrading.
Two subscriptions, Plus and Max, are under the same subscription group, with Max having a higher tier than Plus. Promotional Offers for Max are configured in Apple Store Connect. When a user subscribes to Plus and then upgrades to Max using Promotional Offers, they are prompted with Upgrade upon expiration (Figure 1); if they don't use Promotional Offers, they are prompted to Upgrade immediately (Figure 2). Question 1: What is the situation with the upgrade upon expiration message in Figure 1? Is upgrading using Promotional Offers special? I couldn't find any relevant explanation in Apple's technical documentation. Question 2: Figure 1 shows an upgrade upon expiration, but after subscribing, the webhook still shows the subscription start time as the current time, meaning the upgrade hasn't started immediately. Is the message incorrect?
1
0
91
Dec ’25
Unable to enable Finder Sync Extension
Hi, I am developing a NSReplicatedFileProvider extension. Part of that I am also doing a Finder Sync Extension, but I am for whatever reason unable to enable the extension. What am I missing? it is signed properly, it has the right app group. Is there anything else I nede to enable for it? When I do this: pluginkit -m | grep -i XXXFinderSync I get com.clio.XXX-Desktop.XXXFinderSync(1.0) Not that - shows up as bullet point. The hyphen signifies it is disabled.
1
0
264
Dec ’25
Limited Homebrew App Distribution with Apple Review for Small-Scale Developers
Hello Apple Developer Team I am an independent iOS developer creating highly specialized applications for a very small private audience of fewer than ten users These applications are tightly coupled with custom hardware that I design and manufacture myself for example automotive air suspension control systems Due to the extremely narrow scope and non commercial nature of these apps maintaining a full Apple Developer Program membership is economically impractical The applications are not distributed publicly are not monetized and are used only by a small group of people who share the same technical hobby All application code is written entirely by me There are no copyright violations no private API usage no hidden functionality no tracking and no malicious behavior The apps do not compromise iOS security do not harm users and do not discredit Apple or the iOS platform The software only functions when paired with proprietary hardware under my control At present the only viable way to install these apps
0
0
109
Dec ’25
SubscriptionStoreView(groupID:) bug in TestFlight
Hello, I seem to have a strange bug when testing 2 of my Apps that calls SubscriptionStoreView(groupID: storekitmanager.groupID), where storekitmanager is using @Observable, with groupID from the Subscription Group in App Store Connect. They have the following: Yearly, Biannually, and Monthly. Their productIDs and groupIDs have been configured in each app with the correct IDs. In my main Apple ID, when the SubscriptionStoreView is presented, selecting Monthly, tap Subscribe, and nothing happens. Selecting either Yearly or Biannually, tap Subscribe and the Confirmation Dialog that triggers faceID/touchID will appear correctly. This happens in both Apps for TestFlight. I have a Manage Subscriptions button that uses: manageSubscriptionsSheet(isPresented:subscriptionGroupID:) I can change the subscription to Monthly in that manage subscriptions. However, if I switch to a Sandbox Apple Account, the bug described above does not happen. The Sandbox account when selecting Monthly and tap Subscribe will trigg
1
0
194
Dec ’25
Reply to Background Local cache update
@Engineer Thanks for your explanation. As you suggested https://forums.developer.apple.com/forums/thread/685525 for my use case, but on this thread I have not found any way to handle updates when the app is killed the user. I know as per apple guidelines this user choice is strongly respected and we can not do anything, but do we have any recent updated in WWDC25.
Dec ’25
Reply to MultiPeer Connectivity: Device discovery succeeds but handshake fails when off-network
So, the first recommendation I'd give is to not use Multipeer Connectivity. Quinn has an entire post dedicated to the topic here, but the summary is that the Network Framework can do everything MPC does only... better. In terms of the specific issue you've described, I have a few comments: I am using MPC, and it works great when the devices are connected to the same WiFi AP, with virtually 100% connection success. This is relying on standard Bonjour communication and is generally quite reliable. Indeed, the most common issue I've seen here is MPC’s peer ID architecture interfering with its own connectivity. The issue arises when the devices are not connected to the same WiFi network (or connected to no network with WiFi and Bluetooth still on). Devices detect each other immediately, but when initiating a connection, both devices initiate a handshake, but the connection is not successful. A lot of the behavior here depends on both what you're actually doing (how many users connecting, how long they're
Dec ’25
Reply to How to help Instrument's Swift task task lifetime summary group the same tasks so that the count for tasks is not always 1.
Hi CalebAKA, This view is breaking down these statistics per unique task. If you expand the Swift Task column you should see that these names have the task id as the suffix. However, adding an additional layer of grouping by developer provided task names seems reasonable. I would encourage you to file a feedback report using the feedback assistant.
Dec ’25
Adding subscriptions to group. Inactive state?
I currently have one subscription group with one approved subscription. It is live in production. I am now adding more subscriptions to the same group. Different tiers and different durations. Is there a way to get these new subscriptions approved by Apple, but not yet have them show as options within the group? Sort of an approved-but-inactive state? There's a timing issue. I don't want the new options to show before the website/app descriptive text supports them. And I don't want the website/app descriptive text to describe purchase options that aren't yet available.
0
0
59
Dec ’25
GKLeaderboard.loadLeaderboards returns empty array
After authenticating the user I'm loading my Game Center leaderboards like this: let leaderboards = try await GKLeaderboard.loadLeaderboards(IDs: [leaderboardID]) This is working fine, but there are times when this just returns an empty array. When I encounter this situation, the array remains empty for several hours when retrying, but then at some point it suddenly starts working again. Is this a known issue? Or am I hitting some kind of quota maybe (as I do it quite often while developing my game)?. Edit: My leaderboards are grouped in sets if that makes any difference here.
1
0
585
Dec ’25
Please help me!! Invalid expiration date in profile of summary of review app.ipa content
The profile expiration date is approaching, and no amount of inquiries will solve it. Create a new profile Download a new profile from Xcode Press archive, press Distribute App, press Enterprise, and distribute Invalid expiration date in profile of summary of review app.ipa content I've tried everything that comes out by Googleing profiles, such as regenerating profiles, erasing caches, updating Xcode, updating macOS, deleting existing profile information, etc. Expiration date different from the expiration date of the profile created in that menu is displayed. The expiration date of the profile I created is December 8, 2026, and the previous certificate is January 22, 2026. However, the profile information of the generated ipa is February 12, 2026. So I can't distribute this app because I'm scared, and the expiration date is coming up. Users should have a period of time to update. Get me a novice developer who's choking up.
0
0
199
Dec ’25
Accessibility permission not granted for sandboxed macOS menu bar app (TestFlight & local builds)
Hello, I am developing a macOS menu bar window-management utility (similar in functionality to Magnet / Rectangle) that relies on the Accessibility (AXUIElement) API to move and resize windows and on global hotkeys. I am facing a consistent issue when App Sandbox is enabled. Summary: App Sandbox enabled Hardened Runtime enabled Apple Events entitlement enabled NSAccessibilityDescription present in Info.plist AXIsProcessTrustedWithOptions is called with prompt enabled Observed behavior: When App Sandbox is enabled, the Accessibility permission prompt never appears. The app cannot be manually added in System Settings → Privacy & Security → Accessibility. AXIsProcessTrusted always returns false. As a result, window snapping does not work. When App Sandbox is disabled: The Accessibility prompt appears correctly. The app functions as expected. This behavior occurs both: In local builds In TestFlight builds My questions: Is this expected behavior for sandboxed macOS apps that rely on Accessibility APIs
1
0
424
Dec ’25
Question about MFi token access
Hi all, Our company is applying for the Find My certification for our smartwearable product. Now we submitted the product plan and it's approved. The lab asked us to get the token but we searched on internet and the documents about it are limited. The CSR has approved and we already had .pem and .key file. I wonder what should we do next. Any helps are appreciated
Replies
1
Boosts
0
Views
225
Activity
Dec ’25
Subscription Group Remains as Prepare for Submission
I'm ready to submit a new app with 3 subscription plans. But the status of the group remains 'Prepare for Submission.' And it won't change. All the individual subscription plans have the 'Ready to Submit' status. I have triple-checked individual plans to see if there is anything missing. No. Nothing is missing. There are no pending business contracts to review, either. I have even deleted an existing group and created a whole new subscription group. And I still end up with this prepare status. Am I the only one having this subscription group difficulty? One thing that I realize is that the status appears as 'Ready to Submit' on individual subscription plans. But their respective localization pair of display name and description get the Prepared status. The display name and the description fields are both filled for all three plans. What a nice, merry, merry Christmas. I don't know what else I can do to resolve this Prepared madness. I've been stuck for 4 hours.
Replies
2
Boosts
0
Views
355
Activity
Dec ’25
Reply to Navigation title flickers when tab is changed when used with a List / Form
Summary This is not a bug Closed Feedback Concept TabView needs to be the outermost container. NavigationStack should be in the Tab contents. Fixed Code struct ContentView: View { @State private var selectedTab = TabItem.red var body: some View { TabView(selection: $selectedTab) { ForEach(TabItem.allCases, id: .self) { tab in Tab(tab.rawValue, systemImage: tab.systemImageName, value: tab) { NavigationStack { List { Text(tab.rawValue) } .navigationTitle(selectedTab.rawValue) } } } } } }
Topic: UI Frameworks SubTopic: SwiftUI
Replies
Boosts
Views
Activity
Dec ’25
When using Promotional Offers to upgrade a subscription, a prompt appears indicating an expiration date for upgrading.
Two subscriptions, Plus and Max, are under the same subscription group, with Max having a higher tier than Plus. Promotional Offers for Max are configured in Apple Store Connect. When a user subscribes to Plus and then upgrades to Max using Promotional Offers, they are prompted with Upgrade upon expiration (Figure 1); if they don't use Promotional Offers, they are prompted to Upgrade immediately (Figure 2). Question 1: What is the situation with the upgrade upon expiration message in Figure 1? Is upgrading using Promotional Offers special? I couldn't find any relevant explanation in Apple's technical documentation. Question 2: Figure 1 shows an upgrade upon expiration, but after subscribing, the webhook still shows the subscription start time as the current time, meaning the upgrade hasn't started immediately. Is the message incorrect?
Replies
1
Boosts
0
Views
91
Activity
Dec ’25
Unable to enable Finder Sync Extension
Hi, I am developing a NSReplicatedFileProvider extension. Part of that I am also doing a Finder Sync Extension, but I am for whatever reason unable to enable the extension. What am I missing? it is signed properly, it has the right app group. Is there anything else I nede to enable for it? When I do this: pluginkit -m | grep -i XXXFinderSync I get com.clio.XXX-Desktop.XXXFinderSync(1.0) Not that - shows up as bullet point. The hyphen signifies it is disabled.
Replies
1
Boosts
0
Views
264
Activity
Dec ’25
Limited Homebrew App Distribution with Apple Review for Small-Scale Developers
Hello Apple Developer Team I am an independent iOS developer creating highly specialized applications for a very small private audience of fewer than ten users These applications are tightly coupled with custom hardware that I design and manufacture myself for example automotive air suspension control systems Due to the extremely narrow scope and non commercial nature of these apps maintaining a full Apple Developer Program membership is economically impractical The applications are not distributed publicly are not monetized and are used only by a small group of people who share the same technical hobby All application code is written entirely by me There are no copyright violations no private API usage no hidden functionality no tracking and no malicious behavior The apps do not compromise iOS security do not harm users and do not discredit Apple or the iOS platform The software only functions when paired with proprietary hardware under my control At present the only viable way to install these apps
Replies
0
Boosts
0
Views
109
Activity
Dec ’25
SubscriptionStoreView(groupID:) bug in TestFlight
Hello, I seem to have a strange bug when testing 2 of my Apps that calls SubscriptionStoreView(groupID: storekitmanager.groupID), where storekitmanager is using @Observable, with groupID from the Subscription Group in App Store Connect. They have the following: Yearly, Biannually, and Monthly. Their productIDs and groupIDs have been configured in each app with the correct IDs. In my main Apple ID, when the SubscriptionStoreView is presented, selecting Monthly, tap Subscribe, and nothing happens. Selecting either Yearly or Biannually, tap Subscribe and the Confirmation Dialog that triggers faceID/touchID will appear correctly. This happens in both Apps for TestFlight. I have a Manage Subscriptions button that uses: manageSubscriptionsSheet(isPresented:subscriptionGroupID:) I can change the subscription to Monthly in that manage subscriptions. However, if I switch to a Sandbox Apple Account, the bug described above does not happen. The Sandbox account when selecting Monthly and tap Subscribe will trigg
Replies
1
Boosts
0
Views
194
Activity
Dec ’25
Reply to Background Local cache update
What I mentioned is the current state of things. There isn't anything else introduced about this at WWDC25.
Replies
Boosts
Views
Activity
Dec ’25
Reply to Background Local cache update
@Engineer Thanks for your explanation. As you suggested https://forums.developer.apple.com/forums/thread/685525 for my use case, but on this thread I have not found any way to handle updates when the app is killed the user. I know as per apple guidelines this user choice is strongly respected and we can not do anything, but do we have any recent updated in WWDC25.
Replies
Boosts
Views
Activity
Dec ’25
Reply to MultiPeer Connectivity: Device discovery succeeds but handshake fails when off-network
So, the first recommendation I'd give is to not use Multipeer Connectivity. Quinn has an entire post dedicated to the topic here, but the summary is that the Network Framework can do everything MPC does only... better. In terms of the specific issue you've described, I have a few comments: I am using MPC, and it works great when the devices are connected to the same WiFi AP, with virtually 100% connection success. This is relying on standard Bonjour communication and is generally quite reliable. Indeed, the most common issue I've seen here is MPC’s peer ID architecture interfering with its own connectivity. The issue arises when the devices are not connected to the same WiFi network (or connected to no network with WiFi and Bluetooth still on). Devices detect each other immediately, but when initiating a connection, both devices initiate a handshake, but the connection is not successful. A lot of the behavior here depends on both what you're actually doing (how many users connecting, how long they're
Replies
Boosts
Views
Activity
Dec ’25
Reply to How to help Instrument's Swift task task lifetime summary group the same tasks so that the count for tasks is not always 1.
Hi CalebAKA, This view is breaking down these statistics per unique task. If you expand the Swift Task column you should see that these names have the task id as the suffix. However, adding an additional layer of grouping by developer provided task names seems reasonable. I would encourage you to file a feedback report using the feedback assistant.
Replies
Boosts
Views
Activity
Dec ’25
Adding subscriptions to group. Inactive state?
I currently have one subscription group with one approved subscription. It is live in production. I am now adding more subscriptions to the same group. Different tiers and different durations. Is there a way to get these new subscriptions approved by Apple, but not yet have them show as options within the group? Sort of an approved-but-inactive state? There's a timing issue. I don't want the new options to show before the website/app descriptive text supports them. And I don't want the website/app descriptive text to describe purchase options that aren't yet available.
Replies
0
Boosts
0
Views
59
Activity
Dec ’25
GKLeaderboard.loadLeaderboards returns empty array
After authenticating the user I'm loading my Game Center leaderboards like this: let leaderboards = try await GKLeaderboard.loadLeaderboards(IDs: [leaderboardID]) This is working fine, but there are times when this just returns an empty array. When I encounter this situation, the array remains empty for several hours when retrying, but then at some point it suddenly starts working again. Is this a known issue? Or am I hitting some kind of quota maybe (as I do it quite often while developing my game)?. Edit: My leaderboards are grouped in sets if that makes any difference here.
Replies
1
Boosts
0
Views
585
Activity
Dec ’25
Please help me!! Invalid expiration date in profile of summary of review app.ipa content
The profile expiration date is approaching, and no amount of inquiries will solve it. Create a new profile Download a new profile from Xcode Press archive, press Distribute App, press Enterprise, and distribute Invalid expiration date in profile of summary of review app.ipa content I've tried everything that comes out by Googleing profiles, such as regenerating profiles, erasing caches, updating Xcode, updating macOS, deleting existing profile information, etc. Expiration date different from the expiration date of the profile created in that menu is displayed. The expiration date of the profile I created is December 8, 2026, and the previous certificate is January 22, 2026. However, the profile information of the generated ipa is February 12, 2026. So I can't distribute this app because I'm scared, and the expiration date is coming up. Users should have a period of time to update. Get me a novice developer who's choking up.
Replies
0
Boosts
0
Views
199
Activity
Dec ’25
Accessibility permission not granted for sandboxed macOS menu bar app (TestFlight & local builds)
Hello, I am developing a macOS menu bar window-management utility (similar in functionality to Magnet / Rectangle) that relies on the Accessibility (AXUIElement) API to move and resize windows and on global hotkeys. I am facing a consistent issue when App Sandbox is enabled. Summary: App Sandbox enabled Hardened Runtime enabled Apple Events entitlement enabled NSAccessibilityDescription present in Info.plist AXIsProcessTrustedWithOptions is called with prompt enabled Observed behavior: When App Sandbox is enabled, the Accessibility permission prompt never appears. The app cannot be manually added in System Settings → Privacy & Security → Accessibility. AXIsProcessTrusted always returns false. As a result, window snapping does not work. When App Sandbox is disabled: The Accessibility prompt appears correctly. The app functions as expected. This behavior occurs both: In local builds In TestFlight builds My questions: Is this expected behavior for sandboxed macOS apps that rely on Accessibility APIs
Replies
1
Boosts
0
Views
424
Activity
Dec ’25