Search results for

A Summary of the WWDC25 Group Lab

10,098 results found

Post

Replies

Boosts

Views

Activity

Reply to No "Unregistered" Error Returned for Background Notifications
The Unregistered (410) status is sent back on a best-effort basis, and on a fuzzy logic that may delay the status update randomly. Also, for a token to go into the Unregistered state, the device has to receive a push after the token is no longer valid on the device (either the app has been removed, or unregisterForRemoteNotifications() is called). One reason you are not seeing any (or as many) Unregistered status for background notifications could be that they are heavily throttled, and it could be that they are dropped before the point the status would be updated. In summary, Unregistered should be working for background notifications as well, but the reason you are not seeing could be due to how they are handled, and not necessarily due to an issue on your side. Argun Tekant /  DTS Engineer / Core Technologies
Jul ’25
Reply to Codesigning in Europe still doesn't work with IPv6
[quote='848428022, intown, /thread/792209?answerId=848428022#848428022, /profile/intown'] Is there anyway I can get some assistance. [/quote] It’s hard to say without knowing more about the problem you’re experiencing. If this is a technical problem, then I recommend that you open a new thread here on the forums with the details [1]. Please pay careful attention to the topic, subtopic, and tags you choose, because many of us use that info to find relevant questions. For more info on how to use the forums effectively, see Quinn’s Top Ten DevForums Tips. OTOH, if this is a non-technical problem then the Apple Developer Forums might not be the right option. In that case, post a short summary of the issue here and I’ll see if I can offer a path forward. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com [1] Unless the problem happens to be about codesigning timestamps on IPv6 networks in Europe, but that seems unlikely. But, hey, if it doe
Topic: Code Signing SubTopic: General Tags:
Jul ’25
[iOS Lab] Widespread Malware Blocked Alerts on Snippet Test Output Files (Starting 7/9)
We are experiencing a significant issue with macOS security alerts that began on July 9th, at approximately 4:40 AM UTC. This alert is incorrectly identifying output files from our snippet tests as malware, causing these files to be blocked and moved to the Trash. This is completely disrupting our automated testing workflows. Issue Description: Alert: We are seeing the Malware Blocked and Moved to Trash popup window. Affected Files: The security alert triggers when attempting to execute .par files generated as outputs from our snippet tests. These .par files are unique to each individual test run; they are not a single, static tool. System-Wide Impact: This issue is impacting multiple macOS hosts across our testing infrastructure. Timeline: The issue began abruptly on July 9th, at approximately 4:40 AM UTC. Before that time, our tests were functioning correctly. macOS Versions: The problem is occurring on hosts running both macOS 14.x and 15.x. Experimental Host: Even after upgrading an experimental host to m
1
0
95
Jul ’25
NSURLErrorDomain: -1003 Error
Hi, I have been running into this error whenever I try to send https request from my ios simulator to my server. Below is my code for sending request: var request = URLRequest(url: url) request.httpMethod = POST NSURLConnection.sendAsynchronousRequest(request, queue: OperationQueue.main) {(response, data, error) in guard let data = data else { return } print(String(data: data, encoding: .utf8)!) } I have ssl certificate from letsencrypt setup on my server and it works fine with Android, Chrome and tests well with SSL Lab. I know that NSURLErrorDomain: -1003 Error means can't find the host, but I have no idea why it couldn't find this host. BTW: I have ATS disabled in info.plist. Any help would be greatly appreciated.
2
0
5.3k
Jul ’20
Reply to iOS Dynamically loaded custom fonts in WidgetKit not working on real device (simulator is fine). Sandbox chronod deny file-read-data for font file.
I am also facing the same problem. I am downloading the font dynamically and registering in main app before using but same thing is not working with Widget extension (live activity) .Even If I moved the font file into App Group container and registering them in Widget extension but didn't work. @kelin , can you please tell the work around which worked for you.
Jul ’25
iOS Dynamically loaded custom fonts in WidgetKit not working on real device (simulator is fine). Sandbox chronod deny file-read-data for font file.
Project structure is: App target + widget extension + widget intent extension All share a common appgroup group.com.x.y and all file handling is done using FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: group.com.x.y) so that only the shared container is used. Using the Main app target, a font Chewy-Regular.ttf is downloaded and saved to the shared AppGroup container. Font can now be loaded via CTFontManagerRegisterFontsForURL and displayed in a Main App Text view Text(Testing...).font(Font.custom(Chewy-Regular, size: 20)) Now add a Widgetkit widget instance that uses this font. In 'getTimeLine() and getSnapShot() of IntentTimelineProvider we load the font again via CTFontManagerRegisterFontsForURL (this needs to happen again probably because widget runs in a separate process from the main app?). On simulator, the widget will show the correct font. BUT On iPhone7 real device, the widget will show the 'redacted placeholder view'. It seems that something is crashing. I see in the device
7
0
2.8k
May ’25
iOS TestFlight Build constantly rejected with "App failed to load content" (Guideline 2.1) despite API key restriction removed
Hello Apple Developer Community, I am facing a persistent issue with my iOS TestFlight builds that keeps getting rejected for Guideline 2.1 - Performance - App Completeness, specifically Your app failed to load any content at launch. (blank white screen). My app is With Wans Camp Map (App ID: com.jiro.withwanscampmap). Here's a summary of the situation: App Functionality: The app uses Google Sheets API to fetch campsite data (pins) and Google Maps API to display them on a map. Local Development (Expo Go): When running the app locally using npx expo start and connecting with the Expo Go app, and with the Google Cloud Platform (GCP) API key Application restrictions set to None (no restriction), the app loads successfully and displays all pins correctly. This confirms the API keys themselves and the data fetching logic are working. TestFlight Builds (Rejected): All attempts to upload builds via EAS Build (profile preview with autoIncrement: true in eas.json) and Transporter have resulted in rejection wi
1
0
275
Jul ’25
Memory Zeroing Issue After iOS 18 Update
After iOS 18, some new categories of crash exceptions appeared online, such as those related to the sqlite pcache1 module, those related to the photo album PHAsset, those related to various objc_release crashes, etc. These crash scenarios and stacks are all different, but they all share a common feature, that is, they all crash due to accessing NULL or NULL addresses with a certain offset. According to the analysis, the direct cause is that a certain pointer, which previously pointed to valid memory content, has now become pointing to 0 incorrectly and mysteriously. We tried various methods to eliminate issues such as multi-threading problems. To determine the cause of the problem, we have a simulated malloc guard detection in production. The principle is very simple: Create some private NSString objects with random lengths, but ensure that they exceed the size of one memory physical page. Set the first page of memory for these objects to read-only (aligning the object address with the memory page). After a r
4
0
193
Jul ’25
Reply to Device identifier for framework
[quote='792132021, dwkf, /thread/792132, /profile/dwkf'] Is there a usable device identifier for the framework, regardless of app vendor? [/quote] No. One goal of the iOS sandbox is to prevent unmediated IPC between apps from different teams [1]. Creating the identifier you’re looking for would require such IPC, and that runs counter to this goal. Normally I might suggest filing an enhancement request for such a feature, and you’re totally free to do that, of course. However, I very much doubt that it’ll get traction because of this reason. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com [1] This is, for example, why all the apps from your team can share data via an app group container, but you can’t share that with apps from other teams.
Topic: Privacy & Security SubTopic: General Tags:
Jul ’25
Inquiry about the data format for Live Caller ID Lookup
Hello! https://github.com/apple/live-caller-id-lookup-example/blob/main/Sources/PIRService/PIRService.docc/DataFormat.md The link above shows the data format that the user who gets a call, can get. I wonder if it is also possible to add other fields, for example: summary. I am currently in the design-phase of an app that aims to present what the last call between the two parties was about, and that information can be gotten from an API that I will build according to Apple's principles that is comaptible with the Live Caller ID Lookup protocol. Therefore adding a field that will present a short summary of the last call will be very handy. Is that possible?
17
0
872
Jul ’25
Core Data crash when used in widget extension
I have this very simple PersistenceController setup. It's used in both the main app and widget target. struct PersistenceController { static let shared = PersistenceController() @MainActor static let preview: PersistenceController = { let result = PersistenceController(inMemory: true) let viewContext = result.container.viewContext return result }() let container: NSPersistentContainer /// The main context. var context: NSManagedObjectContext { return container.viewContext } init(inMemory: Bool = false) { container = NSPersistentContainer(name: Gamery) if inMemory { container.persistentStoreDescriptions.first!.url = URL(fileURLWithPath: /dev/null) } else { do { let storeURL = try URL.storeURL(forAppGroup: XXXXXXXXXX, databaseName: Gamery) let storeDescription = NSPersistentStoreDescription(url: storeURL) /// Enable history tracking for cloud syncing purposes. storeDescription.setOption(true as NSNumber, forKey: NSPersistentHistoryTrackingKey) print(### Persistent container location: (storeURL)) container.persi
1
0
93
Jul ’25
SwiftData changes made in widget via AppIntent are not reflected in main app until full relaunch
Hi, I’m using SwiftData with an @Observable DatabaseManager class that is shared between my app and a widget. This class is located inside a Swift package and looks roughly like this: public final class DatabaseManager { public static let shared = DatabaseManager() private init() { let groupID = group.com.yourcompany.myApp let config = ModelConfiguration(groupContainer: .identifier(groupID)) let c = try! ModelContainer(for: MyModel.self, configurations: config) self.container = c self.modelContext = c.mainContext } public private(set) var container: ModelContainer public private(set) var modelContext: ModelContext } In the main app, I inject the container and context like this: struct MyApp: App { var body: some Scene { WindowGroup { ContentView() .modelContainer(DatabaseManager.shared.container) .modelContext(DatabaseManager.shared.modelContext) } } } Both the widget and the main app import the same package, and both use DatabaseManager.shared for reading and writing objects. The problem: When the widget upd
2
0
236
Jul ’25