Search results for

“A Summary of the WWDC26 Group Lab”

10,963 results found

Post

Replies

Boosts

Views

Activity

Confusion about access groups and iOS extensions.
I have an app that's been out for awhile and uses the Keychain to store a token. Now, I'm adding an extension to my app, and so I'm using the methods described in the App Extension Best Practices sesion from 2015 to share a secret between my app and my extension using an access group.My question is about the automatic search behavior for the query API. It's said in the session that update/delete/matching all do the right thing with accessible keychains. What keychains are supposed to be accessible to the extension? What I'm finding is that for existing app users (people who had saved the secret before I was using access groups), my extension has access to the keychain item despite it not having an access group. What I anticipated was that that wouldn't work, and I'd have to do some kind of migration step to move my non-access group item into an acess group one. But it looks like I don't have to do that, at least when I'm debugging with Xcode. Am I missing something here or
8
0
11k
Nov ’16
Keychain Group
Dear Apple Developer Support Team, I would like to inquire whether there is a stable and official method to obtain the correct Team ID. When my app attempts to store data in the Keychain on a physical device, the retrieved Team ID is an unknown one and does not match the Team ID of my developer certificate. This issue consistently results in Keychain access failure with error code -34018. Could you please advise the root cause and provide a reliable solution to fix this Team ID mismatch and resolve the -34018 Keychain error? NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys: kSecClassGenericPassword, kSecClass, @bundleSeedID, kSecAttrAccount, @, kSecAttrService, (id)kCFBooleanTrue, kSecReturnAttributes, nil]; CFDictionaryRef result = nil; OSStatus status = SecItemCopyMatching((CFDictionaryRef)query, (CFTypeRef *)&result); if (status == errSecItemNotFound) status = SecItemAdd((CFDictionaryRef)query, (CFTypeRef *)&result); if (status != errSecSuccess) return nil; NSString *accessGroup = [
5
0
804
May ’26
Sending to Multicast Group, Receiving on own IP
Hey there. I've struggled now for some time to archieve this in Swift/iOS. The situation is as followed: The app is sending via a multicastGroup (NWMulticastGroup) on a specific Port say 4555 a udp message: Hello. (App) xx.x.x.101:Port=> Hello => Multicastgroup:4555 Device within the local Network, in this Group, receives and replies with World directly to the IP of the sender, and on the Port from the sender. Hello received xx.x.x.105 sending World => x.x.x.101:Port The app should receive and add this Device (via Ip) My Concept: Start: guard let multicast = try? NWMulticastGroup(for: [ .hostPort(host: multicast.ip.address, port: 4555) ] ) let params = NWParameters.udp; params.allowLocalEndpointReuse = true; ...... // And then after starting the queue multicast.send(content: msgData) Thats not the big deal. The App sends via a generic port, (e.g. 53222) so the network device receives and replies on this port directly (but not inside the multicast group). First Question: Is there a w
0
0
741
Sep ’21
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
386
Dec ’25
Game Center leaderboard groups
Hi.I have an iOS game with a single leaderboard (the game is called Arcane Tower). I'm porting the game to OSX and I want to use the same leaderboard for both apps. My question is: is there a way to use the iOS leaderboard in the OSX version of the game without making changes to the iOS version? The documentation mentions that leaderboards in a group must have ids beginning with grp., but if I do that, the iOS version of the game will stop working. If that's the only option, then I'm forced to update the iOS version, but in that case people who don't update the game will stop being able to post their scores.Thanks!
4
0
1k
Jun ’15
App Groups Entitlement: ad hoc signing
On MacOS, I know that App Groups (com.apple.security.application-groups) do not require a provisioning profile. I was wondering if it's possible to sign them ad hoc and have it work? So maybe use a random TEAMID prefix and have it work? I would only need the app to work locally (for testing), not be distributed in that fashion, of course.
3
0
514
Mar ’25
Device management lab questions (Tuesday, June 4th at 10:00 AM)
Question: Any plans to be able to login to the Mac with a Managed Apple ID?Answer: Apple does not comment on future plans.Question: Will Apple ever offer more in-depth status information on Apple's system status website for the Apple Business Manager system?Answer: File a Radar to request the specific features you want.Question: Is there any movement with regards to fully automated, zero touch, Apple TV style DEP for macs? It's increasingly challenging to support labs and build farms where we need fully automated installs at scale.Answer: Not happening this year. We get the problem.Question: Activation for Macs? Can we prevent users from bypassing DEP on macOS via offline setup?Answer: Not happening this year. It's a tricky process to cover all deployment scenarios well.Question: How does T2 activation for macs work?Answer: Ask in Security lab.Question: Will we ever be able to manually add macOS devices into DEP similarly to how we can add iOS devices using Apple Configurator?Answer: Pre-T2, hard no.
0
0
355
Jun ’19
Swift Charts Accessibility Grouping
SwiftUI Charts automatically groups accessibility elements on the graph (Double / Date for example) when there's a lot of data, which overrides the accessibilityLabel and value I set for each data point. This makes sense, but how do we modify the chart navigation accessibility readout when this grouping occurs? Here's an example: var body: some View { let salesData: [(Date, Double)] = [ (Date().addingTimeInterval(-1 * 24 * 60 * 60), 1200), (Date().addingTimeInterval(-2 * 24 * 60 * 60), 1500), (Date().addingTimeInterval(-3 * 24 * 60 * 60), 1000), (Date().addingTimeInterval(-4 * 24 * 60 * 60), 500), (Date().addingTimeInterval(-5 * 24 * 60 * 60), 1500), (Date().addingTimeInterval(-6 * 24 * 60 * 60), 1400), (Date().addingTimeInterval(-7 * 24 * 60 * 60), 1300), (Date().addingTimeInterval(-8 * 24 * 60 * 60), 1800), (Date().addingTimeInterval(-9 * 24 * 60 * 60), 500), (Date().addingTimeInterval(-10 * 24 * 60 * 60), 800), (Date().addingTimeInterval(-11 * 24 * 60 * 60), 800), (Date().addingTimeInterv
2
0
929
Aug ’24
Transfer an application between accounts with an existing App Group
Due to business requirements, we need to transfer our app Gem Space for iOS from our current Apple Developer account to a new account. We have a major concern regarding our users and the data associated with the app. The user data is currently stored using an App Group with the identifier, for example: group.com.app.sharedData According to some information we’ve found, it might be possible to complete the transfer by removing the App Group from the old account and creating a new one with the same identifier in the new account. However, other sources suggest that App Group containers are owned by the specific team, and data stored in the container may become inaccessible after the app is transferred to a different team. This raises concerns about the possibility of users losing access to their data after updating the app from the new account. Could you please clarify the expected behavior of App Groups in this case? Do we need to perform any kind of data migration, and if so
2
0
115
Apr ’25
Behaviour of dispatch group tasks with completions?
Hi, I have pseudo code for a repeating task of work: api_call(/status) { tif response.statusCode == 418 { ttapi_call(/rotate-credentials) { ... } t} telse { ttdoSomeWork() t} tsleep(60) tapi_call(/status) } I want to make a call to /status roughly every 60 seconds, but if the response is a 418 then I want to complete a call to /rotate-credentials before continuing with the next status request. There are other api calls going on as well, triggered by user interaction. These other api calls should wait until the /status call is completed in full (including if a credential rotation is triggered). This implies a serial queue? But that won't wait for the completions to finish, so I should be looking at a dispatch group enter(), leave() and wait() right? I can't find/understand from the docs where completion handlers go, in terms of execution, relative to dispatch queues. So where is the completion handler execution of the subsequent call to /rotate-credentials ? If I wrap the status call in a dispatch group
2
0
923
Jun ’20
Reply to Xcode Build Timing summary not visible
For people that come here looking for an answer... after invoking the build using the Product > Perform Action > Build with Timing Summary, once the build is done, select the build in the Report Navigator (⌘9) and then selecting Editor > Open Timeline. This will open the timing summary along side the build log. Note that as far as I know, the flag ShowBuildOperationDuration is only used for showing the duration of the build in the toolbar; it is not required to be set for the build timing summary.
Mar ’23
Get Application Scripts directory for app group
For the current app, I can get the Application Scripts directory with FileManager.url(for: .applicationScriptsDirectory, in: .userDomainMask, appropriateFor: nil, create: true), but I cannot find a similar API for application groups. Does one exist, or do I have to construct the URL manually? That would probably be ~/Library/Application Scripts/[app group id], but there doesn't seem to be a FileManager API to access ~ either, as FileManager.default.homeDirectoryForCurrentUser returns /Users/username/Library/Containers/[app id]/Data/.
4
0
761
Feb ’24
iTunes subscription group user charged twice
Recently I have added new purchases in subscription group, now many users are complaining of getting charged for multiple subscription in the same group. Can somebody please help me in understanding in terms of consumer, how it will proceed?. As per documentation user should have been charged only with the newly chosen subscription and should have received partial refund for the older one.
0
0
517
Sep ’17
Confusion about access groups and iOS extensions.
I have an app that's been out for awhile and uses the Keychain to store a token. Now, I'm adding an extension to my app, and so I'm using the methods described in the App Extension Best Practices sesion from 2015 to share a secret between my app and my extension using an access group.My question is about the automatic search behavior for the query API. It's said in the session that update/delete/matching all do the right thing with accessible keychains. What keychains are supposed to be accessible to the extension? What I'm finding is that for existing app users (people who had saved the secret before I was using access groups), my extension has access to the keychain item despite it not having an access group. What I anticipated was that that wouldn't work, and I'd have to do some kind of migration step to move my non-access group item into an acess group one. But it looks like I don't have to do that, at least when I'm debugging with Xcode. Am I missing something here or
Replies
8
Boosts
0
Views
11k
Activity
Nov ’16
Keychain Group
Dear Apple Developer Support Team, I would like to inquire whether there is a stable and official method to obtain the correct Team ID. When my app attempts to store data in the Keychain on a physical device, the retrieved Team ID is an unknown one and does not match the Team ID of my developer certificate. This issue consistently results in Keychain access failure with error code -34018. Could you please advise the root cause and provide a reliable solution to fix this Team ID mismatch and resolve the -34018 Keychain error? NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys: kSecClassGenericPassword, kSecClass, @bundleSeedID, kSecAttrAccount, @, kSecAttrService, (id)kCFBooleanTrue, kSecReturnAttributes, nil]; CFDictionaryRef result = nil; OSStatus status = SecItemCopyMatching((CFDictionaryRef)query, (CFTypeRef *)&result); if (status == errSecItemNotFound) status = SecItemAdd((CFDictionaryRef)query, (CFTypeRef *)&result); if (status != errSecSuccess) return nil; NSString *accessGroup = [
Replies
5
Boosts
0
Views
804
Activity
May ’26
Sending to Multicast Group, Receiving on own IP
Hey there. I've struggled now for some time to archieve this in Swift/iOS. The situation is as followed: The app is sending via a multicastGroup (NWMulticastGroup) on a specific Port say 4555 a udp message: Hello. (App) xx.x.x.101:Port=> Hello => Multicastgroup:4555 Device within the local Network, in this Group, receives and replies with World directly to the IP of the sender, and on the Port from the sender. Hello received xx.x.x.105 sending World => x.x.x.101:Port The app should receive and add this Device (via Ip) My Concept: Start: guard let multicast = try? NWMulticastGroup(for: [ .hostPort(host: multicast.ip.address, port: 4555) ] ) let params = NWParameters.udp; params.allowLocalEndpointReuse = true; ...... // And then after starting the queue multicast.send(content: msgData) Thats not the big deal. The App sends via a generic port, (e.g. 53222) so the network device receives and replies on this port directly (but not inside the multicast group). First Question: Is there a w
Replies
0
Boosts
0
Views
741
Activity
Sep ’21
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
386
Activity
Dec ’25
How do I create a new campaign from a campaign group
Just created an Advanced Search Ads account.My dashboard only shows a campaign group I created.I cannot see an option to link iTunes Connect, or create a campaign.How do I get started from here?
Replies
2
Boosts
0
Views
2.9k
Activity
Mar ’18
Game Center leaderboard groups
Hi.I have an iOS game with a single leaderboard (the game is called Arcane Tower). I'm porting the game to OSX and I want to use the same leaderboard for both apps. My question is: is there a way to use the iOS leaderboard in the OSX version of the game without making changes to the iOS version? The documentation mentions that leaderboards in a group must have ids beginning with grp., but if I do that, the iOS version of the game will stop working. If that's the only option, then I'm forced to update the iOS version, but in that case people who don't update the game will stop being able to post their scores.Thanks!
Replies
4
Boosts
0
Views
1k
Activity
Jun ’15
App Groups Entitlement: ad hoc signing
On MacOS, I know that App Groups (com.apple.security.application-groups) do not require a provisioning profile. I was wondering if it's possible to sign them ad hoc and have it work? So maybe use a random TEAMID prefix and have it work? I would only need the app to work locally (for testing), not be distributed in that fashion, of course.
Replies
3
Boosts
0
Views
514
Activity
Mar ’25
Device management lab questions (Tuesday, June 4th at 10:00 AM)
Question: Any plans to be able to login to the Mac with a Managed Apple ID?Answer: Apple does not comment on future plans.Question: Will Apple ever offer more in-depth status information on Apple's system status website for the Apple Business Manager system?Answer: File a Radar to request the specific features you want.Question: Is there any movement with regards to fully automated, zero touch, Apple TV style DEP for macs? It's increasingly challenging to support labs and build farms where we need fully automated installs at scale.Answer: Not happening this year. We get the problem.Question: Activation for Macs? Can we prevent users from bypassing DEP on macOS via offline setup?Answer: Not happening this year. It's a tricky process to cover all deployment scenarios well.Question: How does T2 activation for macs work?Answer: Ask in Security lab.Question: Will we ever be able to manually add macOS devices into DEP similarly to how we can add iOS devices using Apple Configurator?Answer: Pre-T2, hard no.
Replies
0
Boosts
0
Views
355
Activity
Jun ’19
How to enable App Groups without Developer Account
How to enable App Groups without Developer Account in Xcode7.3 or Xcode8
Replies
0
Boosts
0
Views
417
Activity
Sep ’16
Swift Charts Accessibility Grouping
SwiftUI Charts automatically groups accessibility elements on the graph (Double / Date for example) when there's a lot of data, which overrides the accessibilityLabel and value I set for each data point. This makes sense, but how do we modify the chart navigation accessibility readout when this grouping occurs? Here's an example: var body: some View { let salesData: [(Date, Double)] = [ (Date().addingTimeInterval(-1 * 24 * 60 * 60), 1200), (Date().addingTimeInterval(-2 * 24 * 60 * 60), 1500), (Date().addingTimeInterval(-3 * 24 * 60 * 60), 1000), (Date().addingTimeInterval(-4 * 24 * 60 * 60), 500), (Date().addingTimeInterval(-5 * 24 * 60 * 60), 1500), (Date().addingTimeInterval(-6 * 24 * 60 * 60), 1400), (Date().addingTimeInterval(-7 * 24 * 60 * 60), 1300), (Date().addingTimeInterval(-8 * 24 * 60 * 60), 1800), (Date().addingTimeInterval(-9 * 24 * 60 * 60), 500), (Date().addingTimeInterval(-10 * 24 * 60 * 60), 800), (Date().addingTimeInterval(-11 * 24 * 60 * 60), 800), (Date().addingTimeInterv
Replies
2
Boosts
0
Views
929
Activity
Aug ’24
Transfer an application between accounts with an existing App Group
Due to business requirements, we need to transfer our app Gem Space for iOS from our current Apple Developer account to a new account. We have a major concern regarding our users and the data associated with the app. The user data is currently stored using an App Group with the identifier, for example: group.com.app.sharedData According to some information we’ve found, it might be possible to complete the transfer by removing the App Group from the old account and creating a new one with the same identifier in the new account. However, other sources suggest that App Group containers are owned by the specific team, and data stored in the container may become inaccessible after the app is transferred to a different team. This raises concerns about the possibility of users losing access to their data after updating the app from the new account. Could you please clarify the expected behavior of App Groups in this case? Do we need to perform any kind of data migration, and if so
Replies
2
Boosts
0
Views
115
Activity
Apr ’25
Behaviour of dispatch group tasks with completions?
Hi, I have pseudo code for a repeating task of work: api_call(/status) { tif response.statusCode == 418 { ttapi_call(/rotate-credentials) { ... } t} telse { ttdoSomeWork() t} tsleep(60) tapi_call(/status) } I want to make a call to /status roughly every 60 seconds, but if the response is a 418 then I want to complete a call to /rotate-credentials before continuing with the next status request. There are other api calls going on as well, triggered by user interaction. These other api calls should wait until the /status call is completed in full (including if a credential rotation is triggered). This implies a serial queue? But that won't wait for the completions to finish, so I should be looking at a dispatch group enter(), leave() and wait() right? I can't find/understand from the docs where completion handlers go, in terms of execution, relative to dispatch queues. So where is the completion handler execution of the subsequent call to /rotate-credentials ? If I wrap the status call in a dispatch group
Replies
2
Boosts
0
Views
923
Activity
Jun ’20
Reply to Xcode Build Timing summary not visible
For people that come here looking for an answer... after invoking the build using the Product > Perform Action > Build with Timing Summary, once the build is done, select the build in the Report Navigator (⌘9) and then selecting Editor > Open Timeline. This will open the timing summary along side the build log. Note that as far as I know, the flag ShowBuildOperationDuration is only used for showing the duration of the build in the toolbar; it is not required to be set for the build timing summary.
Replies
Boosts
Views
Activity
Mar ’23
Get Application Scripts directory for app group
For the current app, I can get the Application Scripts directory with FileManager.url(for: .applicationScriptsDirectory, in: .userDomainMask, appropriateFor: nil, create: true), but I cannot find a similar API for application groups. Does one exist, or do I have to construct the URL manually? That would probably be ~/Library/Application Scripts/[app group id], but there doesn't seem to be a FileManager API to access ~ either, as FileManager.default.homeDirectoryForCurrentUser returns /Users/username/Library/Containers/[app id]/Data/.
Replies
4
Boosts
0
Views
761
Activity
Feb ’24
iTunes subscription group user charged twice
Recently I have added new purchases in subscription group, now many users are complaining of getting charged for multiple subscription in the same group. Can somebody please help me in understanding in terms of consumer, how it will proceed?. As per documentation user should have been charged only with the newly chosen subscription and should have received partial refund for the older one.
Replies
0
Boosts
0
Views
517
Activity
Sep ’17