Search results for

A Summary of the WWDC25 Group Lab

10,109 results found

Post

Replies

Boosts

Views

Activity

Reply to Network.framework UDP requiredLocalEndpoint/allowLocalEndpointReuse still broken in macOS 26
[quote='788798021, enodev, /thread/788798, /profile/enodev'] Still broken on macOS 26 first beta. [/quote] Yep. That matches my expectations based on the state of FB13678278. I recommend that you update your bug with the latest findings. Also, if this issue is having a significant impact on your product, I recommend that you add a summary of that impact to your bug report. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Jun ’25
Reply to Choosing interface for multicast UDP
Thank you. I have got it working with NWMulticastGroup but, interfacing aside, I have an issue I had back when I was using NWConnection as well. After a period of inactivity (5 minutes) the receiver is buffering all the messages it receives within a second and then releasing them all. My server is sending out 20 messages per second. Wireshark confirms that these are leaving as a steady stream, but the receiving side (IOS) becomes jittery and updates every second. If I close the group and reopen the connection it's solved, but then I cant send messages back to the MacOS app without also closing and reopening that connection. Here is the start of my listener on iOS: func openConnection() { let host = NWEndpoint.Host(multicastAddress) let multicastEndpoint = NWEndpoint.hostPort(host: host, port: port) do { activity = ProcessInfo.processInfo.beginActivity(options: [.background, .latencyCritical], reason: Multicast receiving) let group = try NWMulticastGroup(for: [multicastEndpoint]) self.multica
Jun ’25
Reply to Cannot add Wi-Fi Aware entitlement due to automatic signing failure
Hmmmm, this is working for me. Here’s what I did: Using Xcode 26.0 beta on macOS 15.5, I created a new project from the iOS > App template. In Signing & Capabilities, I added Wi-Fi Aware. And enabled the Publish option. I selected Any iOS Device as my run destination. And then built the app. This is what I see: % codesign -d --entitlements - Test788807.app Executable=/Users/quinn/Library/Developer/Xcode/DerivedData/Test788807-dcmkbvkgvfliviecoruqexidkqbe/Build/Products/Debug-iphoneos/Test788807.app/Test788807 [Dict] [Key] application-identifier [Value] [String] SKMME9E2Y8.com.example.apple-samplecode.Test788807 [Key] com.apple.developer.team-identifier [Value] [String] SKMME9E2Y8 [Key] com.apple.developer.wifi-aware [Value] [Array] [String] Publish [Key] get-task-allow [Value] [Bool] true % security cms -D -i Test788807.app/embedded.mobileprovision | plutil -p - { … Entitlements => { application-identifier => SKMME9E2Y8.com.example.apple-samplecode.Test788807 com.apple.developer.team-identifier =
Jun ’25
Reply to Unable to send/receive IPv6 Mutlicast packets on NWConnectionGroup using Apple NF
[quote='844214022, DTS Engineer, /thread/788532?answerId=844214022#844214022'] Are you still working on the protocol you outlined in your previous thread? [/quote] Yes similar, my project involves multicast communication between processes running on different devices within the same network. For all my Apple devices (macOS, iOS, etc.), I am using NWConnectionGroup, which listens on an IPv6 as well as IPv4 multicast address passed through a NWMulticastGroup and a specific multicast port. For IPv6, I am unable to send multicast packets to the IPv6 multicast group using NWConnectionGroup even though I allow the access of the local network as mentioned here. But for IPv4, I am able to send multicast packets to the IPv4 multicast group.
Jun ’25
Reply to Why a driverkit extension needs a CMIO extension
My project like following: ExampleCam is the main app, which install CMIO extension and USB driver extension. The ExampleCam.entitlements: com.apple.developer.system-extension.install com.apple.developer.driver-extension.install com.apple.security.app-sandbox com.apple.security.application-groups $(TeamIdentifierPrefix)com.lqs.example.ExampleCam com.apple.security.files.user-selected.read-only If I use the line: com.apple.developer.driver-extension.install, I can't run the app as the picture 2. But If I delete it, I got the error picture 1: picture 1: picture 2: ContentView.swift: // // ContentView.swift // ExampleCam // // import SwiftUI import SystemExtensions import Logging struct ContentView: View { @State private var logs: [String] = [] @State private var extensionDelegate: ExtensionDelegate? var body: some View { VStack { Image(systemName: globe) .imageScale(.large) .foregroundStyle(.tint) Text(Hello, world!) // 日志显示区域 ScrollView { Text(logs.joined(separator: n)) .frame(maxWidth: .i
Jun ’25
Reply to WidgetKit WidgetConfigurationIntent Parameter Icons
I have solved this problem. The answer was in the WWDC25 video Get to know App Intends. Here's an example of an WidgetConfigurationIntent to toggle a chart showing data points on or off including icons for the two data point display options. struct WatchDataPointsWidgetIntent: AppIntent, WidgetConfigurationIntent { static var title: LocalizedStringResource = Data Points Widget Configuration static var description = IntentDescription(Configure individual data point display for Watch Widgets.) static var isDiscoverable: Bool { return false} init() {} func perform() async throws -> some IntentResult { print(WatchDataPointsWidgetIntent perform) return .result() } @Parameter(title: Chart Display Options, default: ChartDataPointsOption.showDataPoints) var showDataPoints: ChartDataPointsOption? static var parameterSummary: some ParameterSummary { Summary(Chart Options: (.$showDataPoints)) } } enum ChartDataPointsOption: String, AppEnum { case showDataPoints case hideDataPoints static let typeDis
Jun ’25
Unable to apply tinted glass effect to toolbar buttons in iOS 26
I'm trying to apply a tinted glass effect to toolbar buttons in iOS 26, similar to what was shown in the WWDC25 videos, but none of the approaches I've tried produce the translucent tinted glass effect. My code structure: .toolbar { ToolbarItem(placement: .navigationBarTrailing) { TrailingToolbarContent( selectedTab: $selectedTab, showingAddBeneficiary: $showingAddBeneficiary ) } } private struct TrailingToolbarContent: View { @Binding var selectedTab: Int @Binding var showingAddBeneficiary: Bool @EnvironmentObject private var settingsViewModel: SettingsViewModel var body: some View { switch selectedTab { case 1: if #available(iOS 26.0, *) { Button(action: { showingAddBeneficiary = true }) { Image(systemName: plus) } // What I've tried: // .tint(Color(accentPrimary)) // Only changes icon color // .glassEffect(.regular.tint(Color(accentPrimary))) // No effect // .buttonStyle(.glass).tint(Color(accentPrimary)) // No tint, but orange background // .buttonStyle(.borderedProminent).tint(Color(accentPrimar
Topic: UI Frameworks SubTopic: SwiftUI
1
0
169
Jun ’25
how accessible is enough for Accessibility Nutrition Labels?
My team has a robust digital accessibility program and processes for WCAG conformance in our apps. Because of this, there are definitely accessibility defects that get caught and addressed in order of impact and business priority like any other bug. Obviously we want to aim for 100% accessibility for our users, but it's a continual work in progress as new enhancements or changes are released. I'm stuck on the appropriate measurement to indicate support. If we have 50 common tasks and the most central 10 tasks are solid but some supporting (but also common) tasks have a contrast fail or accessibleLabel missing, does that make the whole app not supporting the feature? If completing the task is the rubric there are a whole range of interpretations for that. In a complex app, I anticipate that a group like ours will have strong support for many of the Accessibility Nutrition Labels accessibility features across tasks and devices, but realistically never be 100% free of defects for a given Apple Accessibi
2
0
90
Jun ’25
Migrate Widgets from StaticConfiguration to IntentConfiguration
New features in WatchOS 26 with configurable widgets make it more important than ever that apps adopt IntentConfiguration options where applicable. I develop an app with an Apple Watch complication/widget on many many user's Watch faces around the world. I've completed updating my code to support WidgetKit and remove ClockKit. However, I face huge issues adding support for users to configure their widget/complications. If I update a widget to go from StaticConfiguration to IntentConfiguration, even when keeping the kind string the same, the widget disappears from the Watch face. This is an unacceptable user experience meaning I can't proceed with the migration. The problem is users will expect me to offer configuration in the Watch face soon for their widget/complication. Currently this process is done in a sub-optimal way in the app itself. A similar issue exists on iOS where the widget will just freeze indefinitely is migrated. This issue still occurs on the iOS 26 and WatchOS 26 betas. So how to move this
4
0
167
Jun ’25
Requested NSURLSession task is neither requested nor has it timed out
Our application has initiated an NSURLSession data task, and we have received an initiation ID. However, Application not received callback on the subsequent activity: the task has not been requested, has not timed out, and no error callback has been received. [06/17 09:29:40:559][ 0x282a7d8c0] Requested TaskIdentifier 120 2025-06-17 09:29:40.623337 +0530 nsurlsessiond SUBMITTING: com.apple.CFNetwork-cc-166-373-Task .<120>:A71666 default 2025-06-17 09:29:40.631280 +0530 dasd Submitted Activity: com.apple.CFNetwork-cc-166-373-Task .<120>:A71666 at priority 10 default Seen couple of rejection with for CPUUsagePolicy and MemoryPressurePolicy 2025-06-17 09:29:40.989360 +0530 dasd com.apple.CFNetwork-cc-166-373-Task .<120>:A71666:[ {name: CPUUsagePolicy, policyWeight: 5.000, response: {Decision: Must Not Proceed, Score: 0.00, Rationale: [{[Max allowed CPU Usage level]: Required:90.00, Observed:95.00},]}} {name: MemoryPressurePolicy, policyWeight: 5.000, response: {Decision: Must Not Proceed, Score
7
0
112
Jun ’25
Reply to Reality Composer to Reality Composer Pro?
@ForeverTangent Thank you for your question! As @cooleo pointed out, the recommended way to export from Reality Composer on iPad to Reality Composer Pro is to export your scene as a USDZ file. This can be enabled in the app settings of the Reality Composer app on iPad. USD and its variants is the standard 3D asset file for RealityKit and Reality Composer Pro projects. You can also use third party DCCs, such as Blender, to produce USD content for your apps. For some practical examples of how to use USD in your project, I recommend taking a look at two samples we just released for WWDC25: Petite Asteroids and Canyon Crosser. Both are fully scoped sample projects that heavily rely on RealityKit and RCP workflows.
Jun ’25
Reply to Is it possible to scan for nearby WiFi networks and connect to a device in AP mode on iOS?
[quote='788302021, shopon2024, /thread/788302, /profile/shopon2024'] Is it possible to scan for nearby WiFi networks … ? [/quote] No. [quote='788302021, shopon2024, /thread/788302, /profile/shopon2024'] Is it possible to … connect to a device in AP mode on iOS? [/quote] Yes. You can find a summary of iOS’s Wi-Fi APIs in TN3111 iOS Wi-Fi API overview. For your specific situation I have a forums post, Extra-ordinary Networking > Working with a Wi-Fi Accessory, that has more in-depth info. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Jun ’25
Reply to Access Unix Socket from App Sandbox
Are you sandboxing because you plan to ship on the App Store? Or sandboxing because it’s the right thing to do? Unix domain sockets are a bit of a weird edge case: You can use them for IPC between different components within your app by placing them in an app group container [1]. Otherwise they are blocked by the sandbox as part of its general policy of blocking unmediated IPC between code from different teams. You can’t use a temporary exception entitlement to get around this because of both business and technical limitations: On the business side, App Review generally won’t allow you to use temporary exception entitlements. On the technical side, entitlements like com.apple.security.temporary-exception.files.absolute-path.read-write only work for files and directories; they don’t work for Unix domain sockets. If you’re sandboxing your product because it’s the right thing to do then you can get around this by moving the code to a non-sandboxed XPC service. I talk more about this in The Case for Sand
Topic: Privacy & Security SubTopic: General Tags:
Jun ’25