Overview

Post

Replies

Boosts

Views

Activity

Compositional Layout's broken `visibleItemsInvalidationHandler`
Hello everybody! TLDR: Issues with visibleItemsInvalidationHandler. Minimal code to reproduce available. I've been working with Compositional Layout for a while now and recently I've found myself needing to implement custom animation based on scroll position of UI elements. Once I found visibleItemsInvalidationHandler it felt like the exact solution that I needed. Once I implement I've found out it doesn't quite behave as you'd expect. To put it simply, it seems like the animations only work if your whole layout does not use .estimated nor .uniformAcrossSiblings. As soon as you use them then the animations will stop working, I've debugged it deeper and it seems like the invalidation context generated by it does not include the indexPath of the cells, which is always included in the version in which it works. Feel free to swap the line 51 with its comment to flip between the working and failing version of it. Playground Example My final question therefore is... Is this the expected behavior? The documentation doesn't give any clues about such behavior and although I've tried relentlessly to find a workaround for this specific hiccup I was not successful with it.
1
0
110
3w
Can't enroll to Developer Program - Super cryptic Support replies
I've tried for more than a week to join the Apple Developer Program without success but with super cryptic replies from Apple Developer Support. Looking to hear whether this has happened to others and how you resolved it. This has happened: Right after I submitted pictures of my driver's license I got the message "There may be an issue with your account that needs to be resolved before you can continue. Please contact support". No further information.. I contact support, they say my ID could not be verified, and does not give any further explanation, and not replying to my question whether I should provide another ID, like passport. Now that I try to click "Enroll", I automatically get the message "Your enrollment could not be completed" - AND my dad's name now appear as the account name! Even though I started from my personal Apple Account. I don't understand what is happening. Family sharing is not on. I'm just hitting a dead end of vague replies and silence from Support, and with no actual error messages on what is wrong I'm at a loss for what to do. Any tips or help is much appreciated.
0
0
199
4w
App Preview Guidelines are too strict
Hello fellow devs and Apple engineers, I want to discuss with everyone about App Preview videos on the App Store. My app NFC.cool is an NFC reading and writing app which interacts with NFC tags that need to be held to the top of device frame of an iPhone. As you can see, this is how my app works and I would like to show that to users on the App Store and present my app in the best way possible. However I keep fighting with app review about device frames and/or "real" hands in my app preview videos. Sometimes I get a reviewer that is ok with the video and sometimes not. In screenshots device frames are accepted and very common. Why are they not allowed in app previews? It doesn't make a lot of sense to me. And to be honest, I regularly see app previews with device frames on other AppStore pages. Here is the app preview that got rejected lately: https://www.youtube.com/shorts/qTDBGecK0w0 I can easily agree with the hands (even though they are not real, they are a render). But the device frame helps the user to understand what my app does and how it works. Ideally I would like to have some Apple staff to see this post here and hopefully start a small wave that will change the guidelines in the future. Here the message from the reviewer: Product Page Optimization Guideline 2.3.4 - Performance - Accurate Metadata The app preview for NFC Read Write Socials Video includes content that does not sufficiently show the app in use. Specifically, the app preview: Includes device images and/or device frames. Displays real hands. App previews should allow users to see what the app does and how it will >appear on their device when the preview is played in full screen. My answer: Hello, these are not real hands. These are renders. The video is accurately showing what the real use of my app. Please keep in mind that an NFC tag has to be held from the outside to the device to interact with my app. The guidelines definitely support what I did in my video. Please take another look. Thank you. Following the guidelines: 2.3.4 …You can add narration and video or textual overlays to help explain anything that isn’t clear from the video alone. https://developer.apple.com/app-store/review/guidelines/#accurate-metadata Use graphics and transitions. If you need to demonstrate how interaction or navigation works within your app, you may add graphic elements, such as touch hotspots. We recommend capturing the native UI resolution rather than zooming in on the view. Ensure that any transitions between scenes don’t imply functionality that your app doesn’t include. Aim to use straightforward transitions, like dissolves and fades. https://developer.apple.com/app-store/app-previews/ What's your opinion on this topic?
2
0
146
4w
contentMargins (with .horizontal) creates a visual bug with the sidebar when using a NavigationSplitView in iOS 26 beta 7
FB: FB19828741 Maybe I am doing something wrong with the new LiquidGlass sidebar using iPadOS 26 Beta 7, but when using this code, in stead of the List being centered between the sidebar and the rest of the screen, the cell itself extends beneath the sidebar but the content stays clear of the sidebar, giving a weird visual effect. Not my expected behavior at least. Any ideas? Or just a bug? import SwiftUI struct ContentView: View { var body: some View { NavigationSplitView { Text("Test") } detail: { List { Text("ContentMargin") } .contentMargins(.horizontal, 100.0) } } } #Preview { ContentView() } This was on iPad OS 18:
0
0
64
3w
FinanceKit: Apple Savings transactions missing source account information
When fetching Apple Savings transactions via FinanceKit, the data is missing key context about where the deposit originated from. Here’s an example transaction I retrieved: Transaction( id: 77371A0C-7122-42C7-BEBC-85BDF654AD2B, accountID: 68D9FE9D-6DA6-4A27-BB9D-19209CD29A56, transactionAmount: 1.46 USD, creditDebitIndicator: .credit, transactionDescription: "Deposit", originalTransactionDescription: "", merchantCategoryCode: nil, merchantName: nil, transactionType: .deposit, status: .booked, transactionDate: 2025-08-20 13:44:26 +0000, postedDate: 2025-08-20 13:44:26 +0000 ) As shown: transactionDescription is just "Deposit" merchantName is nil No indication of the source account In contrast, the Wallet app clearly shows context for Apple Savings account deposits, such as: "Apple Card" (daily cash) "Bank of America" (external transfer) "Interest Paid" (we do see "Interest" come through correctly) Without this metadata, third-party apps cannot replicate Wallet’s clarity about where a deposit came from. Every deposit simply appears as "Deposit", which is ambiguous. Request: Please expose additional metadata for Apple Savings account transactions, for example: sourceAccountName (e.g. “Apple Card” or “Bank of America”) transactionOriginType (cashback, external bank transfer, interest) institutionIdentifier or similar for external banks This would allow developers to show clear, Wallet-quality transaction details and avoid confusing users. Impact: The lack of source info makes Savings deposits nearly indistinguishable from one another, even though Wallet provides this context. For apps leveraging FinanceKit, this results in a poorer experience compared to Apple’s own Wallet. Thanks!
0
0
76
4w
VisionOS: WKWebView stops rendering after WindowGroup is closed
I'm building a visionOS app where users can place canvases into the 3D environment. These canvases are RealityKit entities that render web content using a WKWebView. The web view is regularly snapshotted, and its image is applied as a texture on the canvas surface. When the user taps on a canvas, a WindowGroup is opened that displays the same shared WKWebView instance. This works great: both the canvas in 3D and the WindowGroup reflect the same live web content. The canvas owns the WKWebView and keeps a strong reference to it. Problem: Once the user closes the WindowGroup, the 3D canvas stops receiving snapshot updates. The snapshot loop task is still running (verified via logs), but WKWebView.takeSnapshot(...) never returns — the continuation hangs forever. No error is thrown, no image is returned. If the user taps the canvas again (reopening the window), snapshots resume and everything works again. @MainActor private func getSnapshot() async -> UIImage? { guard !webView.isLoading else { return nil } let config = WKSnapshotConfiguration() config.rect = webView.bounds config.afterScreenUpdates = true return await withCheckedContinuation { continuation in webView.takeSnapshot(with: config) { image, _ in continuation.resume(returning: image) } } } What I’ve already verified: The WKWebView is still in memory. The snapshot loop (Task) is still running; it just gets stuck inside takeSnapshot(...). I tried keeping the WKWebView inside a hidden UIWindow (with .alpha = 0.01, .windowLevel = .alert + 1, and isHidden = false). Suspicion It seems that once a WKWebView is passed into SwiftUI and rendered (e.g., via UIViewRepresentable), SwiftUI takes full control over its lifecycle. SwiftUI tells WebKit "This view got closed" and WebKit reacts by stopping the WKWebView. Even though it still exists in memory and is being hold by a strong reference to it in the Canvas-Entity. Right now, this feels like a one-way path: Starting from the canvas, tapping it to open the WindowGroup works fine. But once the WindowGroup is closed, the WebView freezes, and snapshots stop until the view is reopened. Questions Is there any way under visionOS to: Keep a WKWebView rendering after its SwiftUI view (WindowGroup) is dismissed? Prevent WebKit from suspending or freezing the view? Embed the view in a persistent system-rendered context to keep snapshotting functional? For context, here's the relevant SwiftUI setup struct MyWebView: View { var body: some View { if let webView = WebViewManager.shared.getWebView() { WebViewContainer(webView: webView) } } } struct WebViewContainer: UIViewRepresentable { let webView: WKWebView func makeUIView(context: Context) -> UIView { return webView } func updateUIView(_ uiView: UIView, context: Context) {} }
1
0
136
3w
Domain Verification Failed for Apple Pay – Tried Everything
I am attempting to verify my domain https://technoq.genesistechnologies.tech for use with Apple Pay Merchant ID. However, when I attempt verification, the process fails with the message: “Domain verification failed.” Unfortunately, no additional details are provided. I have already completed the following steps: Downloaded the verification file apple-developer-merchantid-domain-association.txt. Placed it in the .well-known directory as instructed. Confirmed that it is publicly accessible at: https://technoq.genesistechnologies.tech/.well-known/apple-developer-merchantid-domain-association.txt Verified that a valid SSL certificate is configured for the domain. Could you please advise on why the verification might be failing and what additional steps I should take to resolve this issue?
0
0
73
4w
Automatic App Icon Style Change in iOS 26
After updating from iOS 18 to iOS 26, our app icon appears to have automatically received the new 'Liquid Glass' effect. We confirmed that this change occurred without us releasing a new app update. My questions are: Is this a system behavior where iOS 26 automatically applies the new icon style to existing apps? If so, is it possible for a developer to control or customize this effect? I am also wondering if there are any methods other than using Icon Composer.
1
0
101
4w
Accessory not supported by this device
Hi, I've had a new deck installed in my car for about 1.5 weeks. I'm having compatibility issues with my 15PM. It happens both wired and wirelessly, I get the error "Accessory not supported by this device". It used to happen all the time, now it's 50/50. Sometimes it works. I've removed and added Bluetooth multiple times on phone and deck, I bought a belkin usb-c to usb-a cable today and it seems to fix it but the problem comes back. I've changed the setting "FaceID and passcode-allow access when locked-accessories." The car stereo guy reckons it's definitely an issue with the phone not the deck, I'm inclined to believe him since the error states "by this device". Any advice appreciated.
0
0
197
3w
app stuck in "waiting for review" for almost a month!
Hello App Review Team, We kindly seek your assistance regarding our app, which has remained in the “Waiting for Review” status since our initial submission on July 30. In order to refresh the process, we have submitted several new builds. We also reached out via email and submitted an expedited review request, but unfortunately, there has still been no progress. It has now been close to a month, and this extended delay is starting to impact our app’s revenue. We would greatly appreciate it if you could let us know whether there are any issues with our submission, or if additional materials are required from our side to help move the review forward. Our Appid: 6630392320 Thank you very much for your time and support.
1
0
91
4w
Save slow motion video with custom playback speed bar
Background: For iOS, I have built a custom video record app that records video at the highest possible FPS (supposed to be around 240 FPS but more like ~200 in practice). When I save this video to the user's camera roll, I notice this dynamic playback speed bar. This bar will speed up or slow down the video. My question: How can I save my video such that this playback speed bar is constantly slow or plays at real time speed? For reference I have include the playback speed bar that I am talking about in the screenshot, you can find this in the photo app when you record slow motion video.
0
0
184
3w
How do you autoscroll a ScrollView during a DragGesture on macOS?
In SwiftUI for macOS, when implementing a DragGesture inside a ScrollVIew, how can I implement auto-scrolling when the mouse is not actively moving? In AppKit, this would normally be done with a periodic event so that auto-scrolling continues to take place even if the user isn't actively moving the mouse. This is essential behaviour when implementing something like a drag-to-select gesture. NSView.autoscroll(with: NSEvent) -> Bool Is there anything in SwiftUI or ScrollView to accomplish this behaviour?
Topic: UI Frameworks SubTopic: SwiftUI Tags:
0
0
124
3w
[visionOS] How to render side-by-side stereo video?
I want to render a 3d/stereoscopic video in an Apple Vision Pro window using RealityKit/RealityView. The video is a left-right stereo. The straight forward approach would be to spawn a quad, and give it a custom Shader Graph material, which has a CameraIndexSwitch. The CameraIndexSwitch chooses between the right texture vs the left texture. https://i.sstatic.net/XawqjNcg.png The issue I have here is that I have to extract the video frames from my AVSampleBufferVideoRenderer. This should work ok, but not if I'm playing FairPlay content. So, my question is, how to render stereo FairPlay videos in a SwiftUI RealityView?
1
0
589
4w
Networking Resources
General: Forums subtopic: App & System Services > Networking TN3151 Choosing the right networking API Networking Overview document — Despite the fact that this is in the archive, this is still really useful. TLS for App Developers forums post Choosing a Network Debugging Tool documentation WWDC 2019 Session 712 Advances in Networking, Part 1 — This explains the concept of constrained networking, which is Apple’s preferred solution to questions like How do I check whether I’m on Wi-Fi? TN3135 Low-level networking on watchOS TN3179 Understanding local network privacy Adapt to changing network conditions tech talk Understanding Also-Ran Connections forums post Extra-ordinary Networking forums post Foundation networking: Forums tags: Foundation, CFNetwork URL Loading System documentation — NSURLSession, or URLSession in Swift, is the recommended API for HTTP[S] on Apple platforms. Network framework: Forums tag: Network Network framework documentation — Network framework is the recommended API for TCP, UDP, and QUIC on Apple platforms. Building a custom peer-to-peer protocol sample code (aka TicTacToe) Implementing netcat with Network Framework sample code (aka nwcat) Configuring a Wi-Fi accessory to join a network sample code Moving from Multipeer Connectivity to Network Framework forums post Network Extension (including Wi-Fi on iOS): See Network Extension Resources Wi-Fi Fundamentals TN3111 iOS Wi-Fi API overview Wi-Fi Aware framework documentation Wi-Fi on macOS: Forums tag: Core WLAN Core WLAN framework documentation Wi-Fi Fundamentals Secure networking: Forums tags: Security Apple Platform Security support document Preventing Insecure Network Connections documentation — This is all about App Transport Security (ATS). Available trusted root certificates for Apple operating systems support article Requirements for trusted certificates in iOS 13 and macOS 10.15 support article About upcoming limits on trusted certificates support article Apple’s Certificate Transparency policy support article What’s new for enterprise in iOS 18 support article — This discusses new key usage requirements. Technote 2232 HTTPS Server Trust Evaluation Technote 2326 Creating Certificates for TLS Testing QA1948 HTTPS and Test Servers Miscellaneous: More network-related forums tags: 5G, QUIC, Bonjour On FTP forums post Using the Multicast Networking Additional Capability forums post Investigating Network Latency Problems forums post WirelessInsights framework documentation iOS Network Signal Strength Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com"
0
0
3.3k
3w
Has anyone experienced a 2-week wait in "Waiting for Review"?
Hello, I submitted an app on August 6th, and it is still in the "Waiting for Review" status. I contacted Apple a week ago, and they politely advised me that this is a normal situation and that I should continue to wait. Has anyone else experienced a similar delay? If so, I would appreciate it if you could share how it was resolved. App ID: 6749074330 Thank you.
1
0
79
4w