Search results for

A Summary of the WWDC25 Group Lab

10,094 results found

Post

Replies

Boosts

Views

Activity

Reply to Access Unix Socket from App Sandbox
Thank you for your reply. I think my previous message might have caused some confusion. What I meant is that I want my existing app, which is already available on the App Store, to connect to the local Docker socket. I am not trying to connect to a socket that belongs to one of my own apps. The Docker socket is a system resource and not part of any of my apps, and as far as I understand, I cannot assign it to an app group
Topic: Privacy & Security SubTopic: General Tags:
Jul ’25
Reply to Access Unix Socket from App Sandbox
[quote='844266022, Typ0genius, /thread/788364?answerId=844266022#844266022, /profile/Typ0genius'] I’m planning to add functionality to connect to the local socket in one of my existing apps. [/quote] Cool. There is a path forward for this, although it may require you to update your existing app. The following should work: Allocate an app group for this task. Sign both apps to claim access to that app group. Have the server create its listener socket in the app group container. And the client connect to that socket in the app group container. Of course, if your existing app has created the listener socket in some other location, you’ll have to update it to change that (or add an additional listener socket, if you need to maintain compatibility with existing clients). App groups are tricky on the Mac; for the full backstory, read App Groups: macOS vs iOS: Working Towards Harmony. Either flavour of app group ID should work for this; you just need acc
Topic: Privacy & Security SubTopic: General Tags:
Jul ’25
how to change the textfield background on click focused
i am using this code but no works @FocusState private var focus: FormFieldFocus? let db = getDatabaseConnection() var body: some View { VStack { Group { Text(Item Num:).padding(1) TextField(Item Num, text: $intemNum) .textFieldStyle(.roundedBorder) .onSubmit {focus = .despTxt} .focused($focus, equals: .itemTxt) .background(focus ? Color.yellow.opacity(0.3) : Color.clear) .cornerRadius(10)
Topic: UI Frameworks SubTopic: SwiftUI
2
0
166
Jul ’25
Change Developer Forum Username
Hi There, Last year, I changed my company name from SugAR Labs to All Immersive. My current developer forum username is SugAR_Labs and I would like to change it to All_Immersive to match my new company name. I was advised by developer support on a phone call that there is not a way for me to do this myself. They referred me to a post like this to see if someone could help. Can someone help me make the change? Thanks!
2
0
181
Jul ’25
UITabBarController ignores UITab view controllers when in UITabGroup
When composing tabs like this and selecting them in the sidebar, only the group's view controller is ever displayed, even when selecting the individual first and second tabs. Their view controllers are just ignored. Am I immensely stupid here or is this a bug in iPadOS 26 beta 3? // First tab let firstTab = UITab( title: First, image: UIImage(systemName: heart), identifier: hello ) { _ in UINavigationController(rootViewController: ViewController()) } // Second tab let secondTab = UITab( title: Second, image: UIImage(systemName: heart), identifier: hello2 ) { _ in UIViewController() } // Tab group let tabGroup = UITabGroup( title: Stuff, image: nil, identifier: stuff, children: [firstTab, secondTab] ) { _ in ViewController() } let tbc = UITabBarController(tabs: [tabGroup]) tbc.mode = .tabSidebar
Topic: UI Frameworks SubTopic: UIKit
3
0
195
Jul ’25
Reply to RealityKit Mesh with USDZ 3D Model
@lijiaxu Adding to what Greg said, I recommend reviewing the section Prepare assets for gameplay for our WWDC25 sample Petite Asteroids. This article describes the process of loading complex geometry and using it to generate a collision mesh. Thank you for your question!
Topic: Spatial Computing SubTopic: General Tags:
Jul ’25
Add “Share & Delete” Option to iOS Share Sheet (Photos, Files, etc.)
🧠 Feature Proposal: Share & Delete Option for iOS Share Sheet 🔍 Problem: Many users frequently share temporary content like group photos, screenshots, or memes. After sharing, these files often stay in the Photos or Files app, leading to storage clutter. 💡 Solution: Introduce a Share & Delete option inside the default iOS Share Sheet. 📲 How it works: User selects photo(s)/file(s) Opens the Share Sheet Sees two options: 📤 Share (Standard) 🗑️ Share & Delete (New Option) After sharing, iOS prompts: Do you want to delete these items from your device? ✅ Benefits: Reduces storage usage Simplifies file cleanup Speeds up user workflow 🔐 Safety Considerations: Confirm deletion after successful share Show “Undo” or move to Recently Deleted 📂 Attribution: Originally proposed by Vicky on July 20, 2025. More Details & UI Mockup: 👉 GitHub: https://github.com/vicky2940/share-and-delete-feature 👉 Android Tracker Submission: https://issuetracker.google.com/issues/433195069 Please consider th
1
0
127
Jul ’25
Reply to Xcode 26 XIB ignores difference between NSView frame and alignment rectangles
Posting this here as a summary for the three people left writing native macOS apps using AppKit, who might stumble here from a search. macOS 26 has brought us the yearly facelift that – as tradition – brings no break-through features or discernible improvement to usability (quite the opposite, this time around). This year’s diktat from Marketing has also brought a regression that affects how AppKit reconstructs and displays UIs in XIB/NIB files. (Haven't checked if this exists on UIKit too.) If you had carefully laid out your controls to be aligned without the assistance of auto-layout, reopening these files with Xcode 26 will show all controls to be misaligned. This same problem is sadly visible at runtime too. AppKit has removed the crucial distinction between frame rectangles and alignment rectangles. You would be spared from this problem only if your controls were participating in auto-layout by having at least one constraint, or by calling -[NSView setTranslatesAutoresizingMaskIntoConstraints:YE
Jul ’25
can an xpc service access the keychain.
I am trying to create an app bundle with an xpc service. The main app creates a keychain item, and attempts to share (keychain access groups) with the xpc service it includes in its bundle. However, the xpc service always encounters a 'user interaction not allowed' error regardless of how I create the keychain item. kSecAttrAccessiblei is set to kSecAttrAccessibleWhenUnlockedThisDeviceOnly, the keychain access group is set for both the main app and the xpc service and in the provisioning profile. I've tried signing and notarizing. Is it ever possible for an xpc service to access the keychain? This all on macos 15.5.
3
0
91
Jul ’25
Windows-specific timeout issue with URLSession in Swift (Error Code -1001)
Hello everyone, 👋🏼🤠 I've been struggling with a persistent issue for several weeks and would greatly appreciate any insights or suggestions from the community. ❗️Problem Summary We are sending JSON requests (~100 KB in size) via URLSession from a Swift app running on Windows. These requests consistently time out after a while. Specifically, we receive the following error: Error Domain=NSURLErrorDomain Code=-1001 (null) This only occurs on Windows – under macOS and Linux, the same requests work perfectly. 🔍 Details The server responds in under 5 seconds, and we have verified that the backend (a Vapor app in Kubernetes) is definitely not the bottleneck. The request always hits the timeout interval, no matter how high we configure it: 60, 120, 300, 600 seconds – the error remains the same. (timeoutForRequest) The request flow: Swift App (Windows) ---> HTTPS ---> Load Balancer (NGINX) ---> HTTP ---> Ingress Controller ---> Vapor App (Kubernetes) On the load balancer we see this error:
2
0
196
Jul ’25
Reply to NavigationStack $path cleared on dealloc?
I went to a WWDC25 SwiftUI Lab regarding this issue. The suggested known workaround was to wrap the 2nd property change in a DispatchQueue.main.async call so that it happens on the next turn of the run loop. You can see my change here: https://github.com/bolsinga/site/pull/1024
Topic: UI Frameworks SubTopic: SwiftUI
Jul ’25
.commandsRemoved() does not work for the first scene.
.commandsRemoved() does not work for the Window and WindowGroup scenes if it’s the primary group (first one). Then I tried to add new menu using the code .commands { CommandGroup(replacing: .newItem) { Button(New Document) { newDocument { TestDocument() } } .keyboardShortcut(n) } But app crashed with error Expected subclass override The test app is a document-based app, with a welcome window using the new Window scene.
1
0
1k
Jul ’25
Clarification on Using Secure UITextField to Prevent Screen Capture
Hello Developer Forums Team, I’ve seen that some banking apps prevent screenshots on certain sensitive screens. I’m working on a similar feature in my SDK and want to confirm if my implementation complies with App Store guidelines. Since there’s no public API to block screenshots, I’m using a workaround based on the secure rendering behavior of UITextField (isSecureTextEntry = true). I embed my custom content (e.g., a UITableView) inside the internal secure container of a UITextField, which results in blank content being captured during screenshots—similar to what some banking apps do. Approach Summary I create a UITextField I detect its internal secure container by matching UIKit internal class names as strings I embed my real UI content into that container I do not use or call any private APIs, just match view class names via strings. ScreenshotPreventingView.swift final class ScreenshotPreventingView: UIView { private let textField = UITextField() private let recognizer = HiddenContainerRecognizer
1
0
127
Jul ’25
Reply to Signing a daemon with the Endpoint Security entitlement
I’m not sure why you’re having problems with this. Lemme walk you through how I tested this today. You can review my steps to see if there’s anything obviously different. And if there isn’t, you can run through the steps yourself to see if you can repeat my experience. If so, you can then compare your primary daemon to your test daemon to see what’s different. So, here’s what I did: Using Xcode 16.4 on macOS 15.5, I created a new project from the macOS > App template. I set it up as a daemon per the advice in Signing a daemon with a restricted entitlement. Note that the details will differ a bit but the final result will be the same. Specifically, here’s my final structure: % find Test791996.app Test791996.app Test791996.app/Contents Test791996.app/Contents/_CodeSignature Test791996.app/Contents/_CodeSignature/CodeResources Test791996.app/Contents/MacOS Test791996.app/Contents/MacOS/Test791996 Test791996.app/Contents/embedded.provisionprofile Test791996.app/Contents/Info.plist Test791996.app/Contents/PkgIn
Topic: App & System Services SubTopic: Core OS Tags:
Jul ’25
Reply to Help with Entitlements for Keychain Access
[quote='793977021, neil218, /thread/793977, /profile/neil218'] I attempted to codesign my native dynamic library (.dylib) with an entitlement [/quote] That won’t work. Entitlements are only relevant to a main executable. If you sign library code with an entitlement it is, at best, ignored. Creating distribution-signed code for macOS has general guidelines for signing Mac code and it specifically calls this out. Expanding on this a little, when a process runs an executable, the system checks the entitlements claimed by that executable. If all the entitlements are authorised by the executable’s profile [1], the process starts running that program and gains those entitlements. If not, the system kills the process [2]. So, to get this to work you have to change how you sign your app as a whole. This can be tricky. I usually recommend that Java developers start Java by way of a native trampoline. See the info and links in the TCC and Main Executables section of On File System Permissions. However, that trampoline
Topic: Privacy & Security SubTopic: General Tags:
Jul ’25