Overview

Post

Replies

Boosts

Views

Activity

App Stuck in “In Review'' status
Hi everyone, My app has been stuck in "In Review" status for over 20 days with no updates. I submitted the app on March 1, 2026, the status changed to "In Review" on March 4, 2026, and after that no changes. App ID: 6755649144 I also reached out to Apple Developer Support on March 15 but haven't received any response. Support Case ID: 102845096494 Could someone from App Review please take a look? Also any advice on how to move things forward would be appreciated. Thank you!
2
1
75
9h
Acceptable level of obfuscation for App Review
New member here, please be gentle :) I am getting ready for App Review for my first iOS app, and I am curious if ANY level of obfuscation is allowed? Say I had a drone controller App, I might have something like this: struct Drone{ var name : String var forwardVelocity : Double var lateralVelocity : Double var verticalVelocity : Double var receivedSignalStrength : Int var rssThreshhold : Int var gpsCoordinates : Data func reverseCourse(){ //do a 180 //... } } func onUpdateReceivedSignalStength(drone:Drone){ if drone.receivedSignalStrength < drone.rssThreshhold{ drone.reverseCourse() } } But I don't really want to make it easy for someone to pull the strings from the binaries and try and copy my work. I realize it's pretty much inevitable, but it seems sensible to protect my IP as much as I can. Is something like this acceptable? struct D{ //obfuscated Drone var parameter1 : String //name var parameter2 : Double //forwardVelocity var parameter3 : Double //lateralVelocity var parameter4 : Double //verticalVelocity var parameter5 : Int //receivedSignalStength var parameter6 : Int //rssThreshhold var parameter7 : Data //gpsCoordinates func funcSeven(){ //do a 180 //... } } func funcSix(d:D){ //check if signal strength requires a course reversal if d.parameter5 < d.parameter6{ // signal strength less than threshhold d.funcSeven() //reverse course } } The comments make it clear what the similarly-named parameters are doing, and what the functions do. I fully understand that something like the below is a no-no, just writing it made my eyes bleed: struct DDF{ var SXR : String var KYV : Double var GTC : Double var DKY : Double var ENY : Int var WKN : Int var DJV : Data func BDO(){ //do a 180 //... } } func PUL(KHY:DDF){ if KHY.ENY < KHY.WKN{ KHY.BDO() } } Is there any level of IP protection through obscurity that is acceptable? I realize that the more genericized the variable and function names are, the harder it is to debug, but that might be an acceptable trade-off against IP protection. To be clear, my app isn't anything to do with drones, this was just a vehicle to ask the question with. My code isn't currently at all obfuscated, everything is in clear terms, but I am wondering if I could/should obfuscate the critical parts before App Review and release? The reason for my concern is that a key feature of the app is something very novel, and I have filed a patent application for it. The patent (if granted) won't be granted for 18-24 months, so anything I can do to protect the IP seems like the right thing to do. As a complete newcomer to releasing Apps, I have no experience at all, so I would be grateful for any help/steers from those that do have experience in trying to protect their IP while not making life difficult for the App Review team. Thanks in advance! 6502A
2
0
1.7k
9h
Unable to accept new developer program license agreement
I see a yellow banner on my App Store Connect page with the following message: Apple Developer Program License Agreement Updated The updated Apple Developer Program License Agreement needs to be reviewed. In order to update your existing apps and submit new apps to the App Store, the Account Holder must review and accept the updated agreement by signing in to their account on the Apple Developer website." I am the account owner and I don't see any option to accept the license agreement. I see that the last agreement was signed on 13th December 2021 and it is accepted. I don't see any other agreements anywhere. I am unable to release any apps due to this issue. Does anyone know how to resolve this?
3
0
891
9h
My App stuck in "Waiting for Review" 50 Days
Hello everyone, My app (ID: 6758741935) was submitted on Feb 15, 2026 at 3:51 PM, 2026, and has been stuck in "Waiting for Review" status for over 50 days. I contacted Developer Support and received confirmation that it's proceeding normally, but no update since. On average, Apple reviews 90 percent of apps within 24 hours. However, there might be cases that need more review time, but mine exceeds 50 days.. Any recent experiences with long queues? Thanks!
1
1
64
9h
Waiting over 3 weeks for a tiny point release.
Now I consider myself a pretty patient person. But I have been waiting over 3 weeks for a very simple app review of a point release of my app. Which is holding up months of work which is live on android. I have tried the accelerate your review process and it led no where. It's quite disappointing that things like this happen and there seems no accountability or tracking for its resolution.
0
0
8
9h
CarPlay: Voice Conversational Entitlement Details
With the Voice Conversational Entitlement, can a CarPlay app establish a turn-based audio interface that operates in two modes: Speaking mode: Audio Session configured for playback Buffered audio Listening mode: Switch Audio Session to .record or .playAndRecord Activate SFSpeechRecognizer And continue toggling back and forth. The app should listen for responses to questions or other audio cues, and assuming those answers are correct (based on analysis of results from SFSpeechRecognizer), continue this pattern of mode 1 and 2 alternating. This appears to be a valid use of this entitlement. Does this also require the Audio App Entitlement, or is the Voice Conversational Entitlement sufficient? Are there other obstacles to this type of app that I'm not seeing? Or perhaps this is technically possible, but unlikely to pass app store review?
0
0
24
9h
Zoom transition source tile lags after back navigation when LazyVGrid is scrolled immediately
[Submitted as FB21961572] When navigating from a tile in a scrolling LazyVGrid to a child view using .navigationTransition(.zoom) and then returning, the source tile can lag behind the rest of the grid if scrolling starts immediately after returning. The lag becomes more pronounced as tile content gets more complex; in this simplified sample, it can seem subtle, but in production-style tiles (as used in both of my apps), it is clearly visible and noticeable. This may be related to another issue I recently filed: Source item disappears after swipe-back with .navigationTransition(.zoom) CONFIGURATION Platform: iOS Simulator and physical device Navigation APIs: matchedTransitionSource + navigationTransition(.zoom) Container: ScrollView + LazyVGrid Sample project: ZoomTransition (DisappearingTile).zip REPRO STEPS Create a new iOS project and replace ContentView with the code below. Run the app in sim or physical device Tap any tile in the scrolling grid to navigate to the child view. Return to the grid (back button or edge swipe). Immediately scroll the grid. Watch the tile that was just opened. EXPECTED All tiles should move together as one coherent scrolling grid, with no per-item lag or desynchronization. ACTUAL The tile that was just opened appears to trail behind neighboring tiles for a short time during immediate scrolling after returning. MINIMAL CODE SAMPLE import SwiftUI struct ContentView: View { @Namespace private var namespace private let tileCount = 40 private let columns = [GridItem(.adaptive(minimum: 110), spacing: 12)] var body: some View { NavigationStack { ScrollView { LazyVGrid(columns: columns, spacing: 12) { ForEach(0..<tileCount, id: \.self) { index in NavigationLink(value: index) { RoundedRectangle(cornerRadius: 16) .fill(color(for: index)) .frame(height: 110) .overlay(alignment: .bottomLeading) { Text("\(index + 1)") .font(.headline) .foregroundStyle(.white) .padding(10) } .matchedTransitionSource(id: index, in: namespace) } .buttonStyle(.plain) } } .padding(16) } .navigationTitle("Zoom Transition Grid") .navigationSubtitle("Open tile, go back, then scroll immediately") .navigationDestination(for: Int.self) { index in Rectangle() .fill(color(for: index)) .ignoresSafeArea() .navigationTransition(.zoom(sourceID: index, in: namespace)) } } } private func color(for index: Int) -> Color { let hue = Double(index % 20) / 20.0 return Color(hue: hue, saturation: 0.8, brightness: 0.9) } } SCREEN RECORDING
Topic: UI Frameworks SubTopic: SwiftUI
3
2
126
11h
Escalation Request – Extended “Waiting for Review” Status
Hello, I would like to request an escalation regarding my app review status. My app (Apple ID: 6758756966) was submitted for review on February 24 and has been in “Waiting for Review” status for an extended period, with no progress so far. I have contacted Apple Developer Support multiple times (Case IDs: 102840237455, 102840079647, 102846664998, 102841727941) starting from March 9, but unfortunately, I have not received any response to any of these requests. I have also submitted three expedited review requests, but none of them have been acknowledged. Could you please: • confirm whether the submission is still active in the queue • check if there are any issues preventing it from moving forward • and assist in escalating the review if possible If any additional information is required from my side, I am ready to provide it immediately. Thank you very much for your time and support.
5
0
190
16h
DeviceActivityReport Extension not working on iOS 26.4 — Extension process never launches
Device: iPhone 15 Pro Max, iOS 26.4 Xcode: Latest version, development signing with "Automatically manage signing" Team: Registered Apple Developer Program (Organization) Problem DeviceActivityReport SwiftUI view renders completely blank. The Report Extension's makeConfiguration(representing:) is never called (confirmed via App Group counter that stays at 0). The DeviceActivityMonitorExtension callbacks (intervalDidStart, eventDidReachThreshold) also never fire. What works AuthorizationCenter.shared.requestAuthorization(for: .individual) → .approved DeviceActivityCenter().startMonitoring() → registers schedules successfully, center.activities returns them ManagedSettingsStore.shield.applications → blocks apps correctly from the main app process Screen Time is enabled and actively collecting data (Settings > Screen Time shows per-app usage: Clash Royale 2h 35m, etc.) App Group UserDefaults(suiteName:) read/write works from the main app What doesn't work DeviceActivityReportExtension.makeConfiguration() is never called (callCount stays 0 in App Group) DeviceActivityMonitorExtension.intervalDidStart() is never called No extension callbacks fire at all — the extension process is never launched by iOS Confirmed it's NOT our app's issue We created a brand new Xcode project from Apple's template: File > New > Project > App File > New > Target > Device Activity Report Extension Added Family Controls capability to both targets Embedded DeviceActivityReport view in ContentView with daily filter Built and ran on the same device Result: Same blank screen. The template project's Report Extension also never renders any data. Console errors Failed to locate container app bundle record. The process may not be entitled to access the LaunchServices database or the app may have moved. (501) personaAttributesForPersonaType for type:0 failed with error Error Domain=NSCocoaErrorDomain Code=4099 "The connection to service named com.apple.mobile.usermanagerd.xpc was invalidated: Connection init failed at lookup with error 159 - Sandbox restriction." LaunchServices: store (null) or url (null) was nil: Error Domain=NSOSStatusErrorDomain Code=-54 "process may not map database" Attempt to map database failed: permission was denied. This attempt will not be retried. Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-54 "process may not map database" What we've tried Deleting app, rebooting device, reinstalling Re-requesting FamilyControls authorization on every launch Embedding extensions with "Embed & Sign" (not just "Embed Without Signing") Verified all 3 .appex files are in PlugIns/ directory at runtime Verified App Group (group.com.parentguard.app) is accessible Verified all App IDs and capabilities registered in Apple Developer portal Tried different DeviceActivityFilter configurations (daily, hourly) Placed DeviceActivityReport view at root of view hierarchy Clean build, new provisioning profiles Extensions embedded [Diagnose] Found extension: DeviceActivityReportExtension.appex [Diagnose] Found extension: DeviceActivityMonitorExtension.appex [Diagnose] Found extension: ShieldConfigurationExtension.appex Question Has anyone gotten DeviceActivityReport or DeviceActivityMonitorExtension to work on iOS 26.4 with a development-signed build from Xcode? Is there a specific configuration or workaround that makes the extension process launch? The Sandbox restriction error (159) on usermanagerd.xpc seems to be the root cause — is there an entitlement or device setting we're missing?
0
0
33
19h
The Apple developer registration process is taking too long.
Hello everyone, I paid for an Apple Developer subscription, but after about 5-6 days I still can't access my developer funds. Please help me access and activate my developer account. I haven't received a response for several days and I'm very upset. I don't know what to do. They're not responding to my requests and the phone number isn't listed anywhere, so I can't call. The Apple Developer subscription appears in the App Store subscriptions, money is being withdrawn from my account, the account isn't active, and my Apple Developer account is empty. This is my first and very frustrating experience. Order code: W1314135156
1
0
59
20h
Guideline 4.2.2 - Design - Minimum Functionality (Rejected)
Guideline 4.2.2 - Design - Minimum Functionality I'm trying to understand why this is happening. My app is a resource for Domestic Violence Survivors. Its not a wrapper of a mobile site -- there isn't a tool that exists like this currently on the market. The app has native features like Quick Exit and a Privacy cover. How can I get past this? What else is needed?
0
0
49
20h
The Apple developer registration process is taking too long.
Hello everyone, I paid for an Apple Developer subscription, but after about 5-6 days I still can't access my developer funds. Please help me access and activate my developer account. I haven't received a response for several days and I'm very upset. I don't know what to do. They're not responding to my requests and the phone number isn't listed anywhere, so I can't call. The Apple Developer subscription appears in the App Store subscriptions, money is being withdrawn from my account, the account isn't active, and my Apple Developer account is empty. This is my first and very frustrating experience. Order code: W1314135156
1
0
61
20h
Potential iOS26 regression on AASA file not download on app install
Original discussion pre iOS 26 Our app uses Auth0 with HTTPS callback, we've found the issue where AASA file is not ready immediately when app is initially launched, which is the exact issue from the above link. The issue seems mostly fixed on later versions on iOS 18, however, we are seeing some indications of a regression on iOS 26. Here's some measurement over the last week. | Platform | iOS 18 | iOS 26 | |---------------|----------|--------| | Adoption rate | 55% | 45% | | Issue seen | 1 | 5 | | Recover? | Yes | No | This only 1 iOS 18 instance was able to recover after 1 second after the first try, however, all iOS 26 instances were not able to recover in couple tens of seconds and less than 1 minute, the user eventually gave up. Is there a way to force app to update AASA file? Are there some iOS setting (like using a VPN) that could potentially downgrade the AASA fetch? Related Auth0 discussion: https://community.auth0.com/t/ios-application-not- recognizing-auth0-associated-domain/134847/27
15
1
1.3k
21h
AppStore.sync Replays the Latest Subscription Renewal into Transaction.unfinished on iOS 26.4 Sandbox
StoreKit2 Repro Notes: the latest renewal appears in Transaction.unfinished after restore (2026-04-05) 1. Issue Summary In the current project, during a normal cold launch: Transaction.latest(for:) returns a value for the weekly subscription Transaction.all returns the full subscription history chain Transaction.unfinished is empty However, after tapping Restore Purchases and calling AppStore.sync(), one "latest renewal" transaction appears in Transaction.unfinished. This behavior looks more like a system-side replay triggered by AppStore.sync() than a consistently unfinished transaction during a normal launch. 2. Affected Product Product: do.i.iapc.vip.week Transaction chain characteristics: All transactions belong to the same auto-renewable subscription chain originalTransactionID = 2000001143446796 The transaction that appears in unfinished is usually the latest or last renewal in the chain 3. Current Code Path During app startup: loadProducts() Debug snapshot for Transaction.latest(for:) Debug snapshot for Transaction.all Scan Transaction.unfinished refreshEntitlements() During restore purchases: Call AppStore.sync() Scan Transaction.unfinished refreshEntitlements() 4. Preconditions A Sandbox test account is used The weekly subscription do.i.iapc.vip.week already has multiple historical renewal transactions The subscription is already expired, so entitlements = 0 during a normal launch The issue is easier to reproduce on an iOS 26.4 device The issue was not consistently reproduced on another iOS 18.2 device 5. Reproduction Steps Path A: Normal cold launch Launch the app Observe the logs: LatestTransaction snapshot AllTransaction snapshot summary unfinished processing result Observed result: latest has a value all contains the full history chain unfinishedHandledCount = 0 Path B: Tap Restore Purchases Launch the app Tap Restore Purchases Trigger AppStore.sync() Observe the logs: restore started unfinished processing started unfinished transaction received Observed result: After restore, one "latest renewal" transaction appears in unfinished That same transaction does not necessarily appear during a normal cold launch 6. Expected Result If a transaction has already been successfully finished in the past, it should not appear again as unfinished after Restore Purchases. A stricter expectation is: During a normal cold launch, unfinished = 0 After tapping Restore Purchases, unfinished should still remain 0 7. Actual Result Actual behavior: Normal cold launch: unfinished = 0 After Restore Purchases: one "latest renewal" transaction appears again in unfinished This suggests that AppStore.sync() may replay the most recent historical subscription transaction. 8. Current Assessment Based on the current logs, the issue is more likely to be: Related to AppStore.sync() / StoreKit / Sandbox replay behavior on the system side Easier to reproduce on iOS 26.4 Less likely to be caused by a persistent app-side bug where finish() is missed during a normal startup flow Reasons: During a normal launch, unfinished = 0 The behavior is inconsistent across devices and OS versions, even with the same Sandbox account latest, all, and unfinished can be clearly separated during a normal cold launch 9. Suggested Engineering Position Suggested wording for internal or external communication: In the iOS 26.4 + Sandbox environment, calling AppStore.sync() may cause StoreKit to replay the latest historical subscription transaction into Transaction.unfinished. Since the same transaction does not necessarily appear during a normal cold launch, the issue currently looks more like a system/environment-specific behavior difference than an app-side bug where finish() is consistently missed during the regular startup path. 10. Additional Evidence That Can Be Collected If this needs to be escalated to the team or to Apple, the following would strengthen the report: Full log comparison before and after tapping Restore Purchases The same transactionId compared between normal launch and post-restore behavior Cross-device comparison on different iOS versions A minimal reproducible sample project and Sandbox test record
0
0
48
22h
Allow suggesting changes to topic and tags on other people's posts
Many posts on the Apple Developer Forums are categorized incorrectly. It would be nice if there was a way to suggest changes to the topic and tags that someone else's post is filed under and have these changes be able to be approved either by a forum admin or the original poster. FB22415719 https://github.com/feedback-assistant/reports/issues/789
0
0
23
22h
My iOS Swift application works on wide range of iPhones from iPhone X to iPhone 16 Pro Max
My iOS Swift application works without problems and tested on wide range of iPhones from iPhone X to iPhone 16 Pro Max when compiled by XCode 16.4. When compiled on Xcode 26 application it frequently crashes with 0x8BADF00D FRONTBOARD error in various places when running on iPhone 14 Plus, most often when typing or when scrolling the screen. It works without problems on iPhone 16 Pro Max independent of the version of Xcode used for compilation. I followed dozens of recommendations, introduced async/await, tasks, significantly reduced complexity of layouts, making uniform bubbles etc.etc. , tried to introduce many simplifications in the application, still I could not achieve elimination of frequent crashes on iPhone 14 Plus running iOS 26.3.1, no matter what I tried. Other than that all functionality seems to be working. This is the beginning of the Crash report: Termination Reason: Namespace FRONTBOARD, <RBSTerminateContext| domain:10 code:0x8BADF00D explanation: Failed to terminate gracefully after 5.0s ProcessVisibility: Unknown ProcessState: Running WatchdogEvent: process-exit WatchdogVisibility: Foreground WatchdogCPUStatistics: ( "Elapsed total CPU time (seconds): 9.330 (user 7.670, system 1.660), 29% CPU", "Elapsed application CPU time (seconds): 5.358, 17% CPU" ) Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 ??? 0x1b184c7b0 ??? 1 libswiftCore.dylib 0x19de70694 ContiguousArrayStorage.__deallocating_deinit + 95 2 libswiftCore.dylib 0x19dd013a8 swift_release_dealloc + 55 3 libswiftCore.dylib 0x19dd01fc4 bool swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1>>::doDecrementSlow<(swift::PerformDeinit)1>(swift::RefCountBitsT<(swift::RefCountInlinedness)1>, unsigned int) + 151 4 SwiftUICore 0x1aaee2ca4 LazyLayoutViewCache.updatePrefetchPhases() + 1315 5 SwiftUICore 0x1ab129068 specialized LazySubviewPlacements.updateValue() + 4251 6 SwiftUICore 0x1ab14a23c specialized implicit closure #1 in closure #1 in closure #1 in Attribute.init(:) + 23 7 AttributeGraph 0x1d2be8e48 AG::Graph::UpdateStack::update() + 499 8 AttributeGraph 0x1d2beacf0 AG::Subgraph::update(unsigned int) + 959 9 SwiftUICore 0x1aace5b44 specialized GraphHost.runTransaction(:do:id:) + 387 10 SwiftUICore 0x1aac772d8 GraphHost.flushTransactions() + 183 11 SwiftUI 0x1a9a0fa80 <deduplicated_symbol> + 23 12 SwiftUICore 0x1aac71578 partial apply for closure #1 in ViewGraphRootValueUpdater.updateGraph(body:) + 27 13 SwiftUICore 0x1aac73f54 ViewGraphRootValueUpdater._updateViewGraph(body:) + 231 14 SwiftUICore 0x1aac714d0 ViewGraphRootValueUpdater.updateGraph(body:) + 179 15 SwiftUI 0x1a9a0fa4c closure #1 in closure #1 in closure #1 in UIHostingView.beginTransaction() + 171 16 SwiftUI 0x1a9a0f998 partial apply for closure #1 in closure #1 in closure #1 in UIHostingView.beginTransaction() + 23 17 SwiftUICore 0x1aac69aa8 closure #1 in static Update.ensure(:) + 55 18 SwiftUICore 0x1aac69cec static Update.ensure(:) + 99 19 SwiftUI 0x1a9a0f970 partial apply for closure #1 in closure #1 in UIHostingView.beginTransaction() + 79 20 SwiftUICore 0x1aad97e10 <deduplicated_symbol> + 27 21 SwiftUICore 0x1aac5aab0 specialized static NSRunLoop.flushObservers() + 363 22 SwiftUICore 0x1aac5a91c @objc closure #1 in static NSRunLoop.addObserver(:) + 27 23 CoreFoundation 0x1a0c87ea0 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 35 24 CoreFoundation 0x1a0c7158c __CFRunLoopDoObservers + 647 25 CoreFoundation 0x1a0c48740 __CFRunLoopRun + 923 26 CoreFoundation 0x1a0c47a6c CFRunLoopRunSpecificWithOptions + 531 27 GraphicsServices 0x2455d9498 GSEventRunModal + 119 28 UIKitCore 0x1a66f7df8 -[UIApplication run] + 791 29 UIKitCore 0x1a66a0e54 UIApplicationMain + 335 30 SwiftUI 0x1a99b8d20 closure #1 in KitRendererCommon(:) + 167 31 SwiftUI 0x1a99b58d4 runApp(:) + 111 32 SwiftUI 0x1a99b53c0 static App.main() + 171
0
0
23
22h
NEURLFilter production build fails with _NSURLErrorPrivacyProxyFailureKey — how to provision OHTTP privacy proxy for bundle?
Summary I'm implementing NEURLFilter with the com.apple.developer.networking.networkextension.url-filter-provider entitlement for a system-wide URL filtering feature. The feature works perfectly in development-signed builds (connecting successfully to my PIR server over extended testing) but every production-signed build fails before any network call is made. NEURLFilterManager reports .serverSetupIncomplete (code 9). After installing the NetworkExtension debug profile, the unredacted com.apple.CipherML logs reveal the cause: no privacy proxy is provisioned for this bundle identifier, and the connection is configured proxy fail closed. Environment iOS 26 Entitlement: com.apple.developer.networking.networkextension.url-filter-provider Extension point: com.apple.networkextension.url-filter-control PIR server configured via NEURLFilterManager.setConfiguration(...) Privacy Pass issuer configured Dev-signed builds: working correctly, connecting to the PIR server Production-signed builds (both TestFlight and distribution): failing identically The Error Chain Surfaced to the app via NEURLFilterManager.lastDisconnectError: NEURLFilterManager.Error.serverSetupIncomplete (code 9) ← NEAgentURLFilterErrorDomain Code 3 ← com.apple.CipherML Code 1100 "Unable to query status" ← com.apple.CipherML Code 1800 (error details were logged and redacted) After installing the VPN (NetworkExtension) debug profile, the unredacted com.apple.CipherML subsystem shows: queryStatus(for:options:) threw an error: Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={ _NSURLErrorNWPathKey = satisfied (Path is satisfied), interface: en0[802.11], ipv4, dns, uses wifi, LQM: good, NSErrorFailingURLKey = https://<my-pir-server>/config, NSUnderlyingError = { Error Domain=NSPOSIXErrorDomain Code=50 "Network is down" }, _NSURLErrorPrivacyProxyFailureKey = true, NSLocalizedDescription = "The Internet connection appears to be offline." } The critical diagnostic line in the com.apple.network subsystem is: nw_endpoint_proxy_handler_should_use_proxy Proxies not present, but required to fail closed And the connection setup shows the proxy fail closed flag is mandatory for the connection: [C... ... Hostname#...:443 quic, bundle id: <my-bundle-id>, attribution: developer, using ephemeral configuration, context: NWURLSession (sensitive), proxy fail closed] start The network path itself is healthy (Wi-Fi good, DNS resolves correctly), but the connection is explicitly configured to fail closed if no proxy is present, and no proxy is provisioned for this bundle identifier. The entire failure happens in approximately 18 ms, far too fast for any network round-trip, confirming no traffic ever leaves the device. What I've Verified The entitlement is present in the distribution build The NEURLFilterControlProvider extension loads and returns a valid Bloom filter prefilter (with a tag that round-trips correctly between extension and framework) NEURLFilterManager.setConfiguration(pirServerURL:pirPrivacyPassIssuerURL:pirAuthenticationToken:controlProviderBundleIdentifier:) accepts all four parameters without error Development-signed builds of the same bundle identifier connect successfully to the same PIR server On production-signed builds, zero requests reach the PIR server — failure is purely client-side, before any network activity The Question How does the OHTTP privacy proxy get provisioned for a bundle identifier so that production builds can successfully use NEURLFilter? Specifically: Is there a Capability Request form I need to submit for url-filter-provider? I cannot find one in the Capability Requests section of my developer portal. Should I be running my own OHTTP gateway (for example using swift-nio-oblivious-http), and if so, does Apple then need to provision routing from their OHTTP relay to my gateway URL? Is the OHTTP relay path meant to be automatic once the entitlement is active, and if so, is there a specific activation step I'm missing? Is there any way to verify the current provisioning state for a specific bundle identifier from the developer portal? I can provide the full sysdiagnose and unredacted bundle/server details privately to an Apple engineer if that would help diagnose. I'd prefer to keep them out of a public post. Thanks!
0
0
57
1d
iOS 26 TabBar Remove Selected Capsule
I have subclassed UITabBar and created a custom look and feel for it. On iOS 18, the tab bar appears as expected. On iOS 26, however, a default Liquid Glass-style capsule selection indicator appears behind the selected tab item. I tried using UITabBarAppearance, including selectionIndicatorTintColor = .clear and selectionIndicatorImage = nil / empty image, but the capsule-style selected background still appears. Is this selection treatment part of the new default system rendering in iOS 26, and if so, is there any supported way to remove or disable it while still using UITabBar?
Topic: UI Frameworks SubTopic: UIKit Tags:
2
0
89
1d
App Stuck in “In Review'' status
Hi everyone, My app has been stuck in "In Review" status for over 20 days with no updates. I submitted the app on March 1, 2026, the status changed to "In Review" on March 4, 2026, and after that no changes. App ID: 6755649144 I also reached out to Apple Developer Support on March 15 but haven't received any response. Support Case ID: 102845096494 Could someone from App Review please take a look? Also any advice on how to move things forward would be appreciated. Thank you!
Replies
2
Boosts
1
Views
75
Activity
9h
Acceptable level of obfuscation for App Review
New member here, please be gentle :) I am getting ready for App Review for my first iOS app, and I am curious if ANY level of obfuscation is allowed? Say I had a drone controller App, I might have something like this: struct Drone{ var name : String var forwardVelocity : Double var lateralVelocity : Double var verticalVelocity : Double var receivedSignalStrength : Int var rssThreshhold : Int var gpsCoordinates : Data func reverseCourse(){ //do a 180 //... } } func onUpdateReceivedSignalStength(drone:Drone){ if drone.receivedSignalStrength < drone.rssThreshhold{ drone.reverseCourse() } } But I don't really want to make it easy for someone to pull the strings from the binaries and try and copy my work. I realize it's pretty much inevitable, but it seems sensible to protect my IP as much as I can. Is something like this acceptable? struct D{ //obfuscated Drone var parameter1 : String //name var parameter2 : Double //forwardVelocity var parameter3 : Double //lateralVelocity var parameter4 : Double //verticalVelocity var parameter5 : Int //receivedSignalStength var parameter6 : Int //rssThreshhold var parameter7 : Data //gpsCoordinates func funcSeven(){ //do a 180 //... } } func funcSix(d:D){ //check if signal strength requires a course reversal if d.parameter5 < d.parameter6{ // signal strength less than threshhold d.funcSeven() //reverse course } } The comments make it clear what the similarly-named parameters are doing, and what the functions do. I fully understand that something like the below is a no-no, just writing it made my eyes bleed: struct DDF{ var SXR : String var KYV : Double var GTC : Double var DKY : Double var ENY : Int var WKN : Int var DJV : Data func BDO(){ //do a 180 //... } } func PUL(KHY:DDF){ if KHY.ENY < KHY.WKN{ KHY.BDO() } } Is there any level of IP protection through obscurity that is acceptable? I realize that the more genericized the variable and function names are, the harder it is to debug, but that might be an acceptable trade-off against IP protection. To be clear, my app isn't anything to do with drones, this was just a vehicle to ask the question with. My code isn't currently at all obfuscated, everything is in clear terms, but I am wondering if I could/should obfuscate the critical parts before App Review and release? The reason for my concern is that a key feature of the app is something very novel, and I have filed a patent application for it. The patent (if granted) won't be granted for 18-24 months, so anything I can do to protect the IP seems like the right thing to do. As a complete newcomer to releasing Apps, I have no experience at all, so I would be grateful for any help/steers from those that do have experience in trying to protect their IP while not making life difficult for the App Review team. Thanks in advance! 6502A
Replies
2
Boosts
0
Views
1.7k
Activity
9h
developer pending
i payment on 6th SEP,its still pending ,cant finish the purchase
Replies
6
Boosts
0
Views
1.1k
Activity
9h
Unable to accept new developer program license agreement
I see a yellow banner on my App Store Connect page with the following message: Apple Developer Program License Agreement Updated The updated Apple Developer Program License Agreement needs to be reviewed. In order to update your existing apps and submit new apps to the App Store, the Account Holder must review and accept the updated agreement by signing in to their account on the Apple Developer website." I am the account owner and I don't see any option to accept the license agreement. I see that the last agreement was signed on 13th December 2021 and it is accepted. I don't see any other agreements anywhere. I am unable to release any apps due to this issue. Does anyone know how to resolve this?
Replies
3
Boosts
0
Views
891
Activity
9h
Developer Services Registration is Broken.
I have now registered twice and had no response from customer service. I see dozens of other people on the forum with the same issue. This needs to be resolved and someone from apple needs to speak up.
Replies
1
Boosts
0
Views
22
Activity
9h
My App stuck in "Waiting for Review" 50 Days
Hello everyone, My app (ID: 6758741935) was submitted on Feb 15, 2026 at 3:51 PM, 2026, and has been stuck in "Waiting for Review" status for over 50 days. I contacted Developer Support and received confirmation that it's proceeding normally, but no update since. On average, Apple reviews 90 percent of apps within 24 hours. However, there might be cases that need more review time, but mine exceeds 50 days.. Any recent experiences with long queues? Thanks!
Replies
1
Boosts
1
Views
64
Activity
9h
Waiting over 3 weeks for a tiny point release.
Now I consider myself a pretty patient person. But I have been waiting over 3 weeks for a very simple app review of a point release of my app. Which is holding up months of work which is live on android. I have tried the accelerate your review process and it led no where. It's quite disappointing that things like this happen and there seems no accountability or tracking for its resolution.
Replies
0
Boosts
0
Views
8
Activity
9h
CarPlay: Voice Conversational Entitlement Details
With the Voice Conversational Entitlement, can a CarPlay app establish a turn-based audio interface that operates in two modes: Speaking mode: Audio Session configured for playback Buffered audio Listening mode: Switch Audio Session to .record or .playAndRecord Activate SFSpeechRecognizer And continue toggling back and forth. The app should listen for responses to questions or other audio cues, and assuming those answers are correct (based on analysis of results from SFSpeechRecognizer), continue this pattern of mode 1 and 2 alternating. This appears to be a valid use of this entitlement. Does this also require the Audio App Entitlement, or is the Voice Conversational Entitlement sufficient? Are there other obstacles to this type of app that I'm not seeing? Or perhaps this is technically possible, but unlikely to pass app store review?
Replies
0
Boosts
0
Views
24
Activity
9h
Zoom transition source tile lags after back navigation when LazyVGrid is scrolled immediately
[Submitted as FB21961572] When navigating from a tile in a scrolling LazyVGrid to a child view using .navigationTransition(.zoom) and then returning, the source tile can lag behind the rest of the grid if scrolling starts immediately after returning. The lag becomes more pronounced as tile content gets more complex; in this simplified sample, it can seem subtle, but in production-style tiles (as used in both of my apps), it is clearly visible and noticeable. This may be related to another issue I recently filed: Source item disappears after swipe-back with .navigationTransition(.zoom) CONFIGURATION Platform: iOS Simulator and physical device Navigation APIs: matchedTransitionSource + navigationTransition(.zoom) Container: ScrollView + LazyVGrid Sample project: ZoomTransition (DisappearingTile).zip REPRO STEPS Create a new iOS project and replace ContentView with the code below. Run the app in sim or physical device Tap any tile in the scrolling grid to navigate to the child view. Return to the grid (back button or edge swipe). Immediately scroll the grid. Watch the tile that was just opened. EXPECTED All tiles should move together as one coherent scrolling grid, with no per-item lag or desynchronization. ACTUAL The tile that was just opened appears to trail behind neighboring tiles for a short time during immediate scrolling after returning. MINIMAL CODE SAMPLE import SwiftUI struct ContentView: View { @Namespace private var namespace private let tileCount = 40 private let columns = [GridItem(.adaptive(minimum: 110), spacing: 12)] var body: some View { NavigationStack { ScrollView { LazyVGrid(columns: columns, spacing: 12) { ForEach(0..<tileCount, id: \.self) { index in NavigationLink(value: index) { RoundedRectangle(cornerRadius: 16) .fill(color(for: index)) .frame(height: 110) .overlay(alignment: .bottomLeading) { Text("\(index + 1)") .font(.headline) .foregroundStyle(.white) .padding(10) } .matchedTransitionSource(id: index, in: namespace) } .buttonStyle(.plain) } } .padding(16) } .navigationTitle("Zoom Transition Grid") .navigationSubtitle("Open tile, go back, then scroll immediately") .navigationDestination(for: Int.self) { index in Rectangle() .fill(color(for: index)) .ignoresSafeArea() .navigationTransition(.zoom(sourceID: index, in: namespace)) } } } private func color(for index: Int) -> Color { let hue = Double(index % 20) / 20.0 return Color(hue: hue, saturation: 0.8, brightness: 0.9) } } SCREEN RECORDING
Topic: UI Frameworks SubTopic: SwiftUI
Replies
3
Boosts
2
Views
126
Activity
11h
Escalation Request – Extended “Waiting for Review” Status
Hello, I would like to request an escalation regarding my app review status. My app (Apple ID: 6758756966) was submitted for review on February 24 and has been in “Waiting for Review” status for an extended period, with no progress so far. I have contacted Apple Developer Support multiple times (Case IDs: 102840237455, 102840079647, 102846664998, 102841727941) starting from March 9, but unfortunately, I have not received any response to any of these requests. I have also submitted three expedited review requests, but none of them have been acknowledged. Could you please: • confirm whether the submission is still active in the queue • check if there are any issues preventing it from moving forward • and assist in escalating the review if possible If any additional information is required from my side, I am ready to provide it immediately. Thank you very much for your time and support.
Replies
5
Boosts
0
Views
190
Activity
16h
DeviceActivityReport Extension not working on iOS 26.4 — Extension process never launches
Device: iPhone 15 Pro Max, iOS 26.4 Xcode: Latest version, development signing with "Automatically manage signing" Team: Registered Apple Developer Program (Organization) Problem DeviceActivityReport SwiftUI view renders completely blank. The Report Extension's makeConfiguration(representing:) is never called (confirmed via App Group counter that stays at 0). The DeviceActivityMonitorExtension callbacks (intervalDidStart, eventDidReachThreshold) also never fire. What works AuthorizationCenter.shared.requestAuthorization(for: .individual) → .approved DeviceActivityCenter().startMonitoring() → registers schedules successfully, center.activities returns them ManagedSettingsStore.shield.applications → blocks apps correctly from the main app process Screen Time is enabled and actively collecting data (Settings > Screen Time shows per-app usage: Clash Royale 2h 35m, etc.) App Group UserDefaults(suiteName:) read/write works from the main app What doesn't work DeviceActivityReportExtension.makeConfiguration() is never called (callCount stays 0 in App Group) DeviceActivityMonitorExtension.intervalDidStart() is never called No extension callbacks fire at all — the extension process is never launched by iOS Confirmed it's NOT our app's issue We created a brand new Xcode project from Apple's template: File > New > Project > App File > New > Target > Device Activity Report Extension Added Family Controls capability to both targets Embedded DeviceActivityReport view in ContentView with daily filter Built and ran on the same device Result: Same blank screen. The template project's Report Extension also never renders any data. Console errors Failed to locate container app bundle record. The process may not be entitled to access the LaunchServices database or the app may have moved. (501) personaAttributesForPersonaType for type:0 failed with error Error Domain=NSCocoaErrorDomain Code=4099 "The connection to service named com.apple.mobile.usermanagerd.xpc was invalidated: Connection init failed at lookup with error 159 - Sandbox restriction." LaunchServices: store (null) or url (null) was nil: Error Domain=NSOSStatusErrorDomain Code=-54 "process may not map database" Attempt to map database failed: permission was denied. This attempt will not be retried. Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-54 "process may not map database" What we've tried Deleting app, rebooting device, reinstalling Re-requesting FamilyControls authorization on every launch Embedding extensions with "Embed & Sign" (not just "Embed Without Signing") Verified all 3 .appex files are in PlugIns/ directory at runtime Verified App Group (group.com.parentguard.app) is accessible Verified all App IDs and capabilities registered in Apple Developer portal Tried different DeviceActivityFilter configurations (daily, hourly) Placed DeviceActivityReport view at root of view hierarchy Clean build, new provisioning profiles Extensions embedded [Diagnose] Found extension: DeviceActivityReportExtension.appex [Diagnose] Found extension: DeviceActivityMonitorExtension.appex [Diagnose] Found extension: ShieldConfigurationExtension.appex Question Has anyone gotten DeviceActivityReport or DeviceActivityMonitorExtension to work on iOS 26.4 with a development-signed build from Xcode? Is there a specific configuration or workaround that makes the extension process launch? The Sandbox restriction error (159) on usermanagerd.xpc seems to be the root cause — is there an entitlement or device setting we're missing?
Replies
0
Boosts
0
Views
33
Activity
19h
The Apple developer registration process is taking too long.
Hello everyone, I paid for an Apple Developer subscription, but after about 5-6 days I still can't access my developer funds. Please help me access and activate my developer account. I haven't received a response for several days and I'm very upset. I don't know what to do. They're not responding to my requests and the phone number isn't listed anywhere, so I can't call. The Apple Developer subscription appears in the App Store subscriptions, money is being withdrawn from my account, the account isn't active, and my Apple Developer account is empty. This is my first and very frustrating experience. Order code: W1314135156
Replies
1
Boosts
0
Views
59
Activity
20h
Guideline 4.2.2 - Design - Minimum Functionality (Rejected)
Guideline 4.2.2 - Design - Minimum Functionality I'm trying to understand why this is happening. My app is a resource for Domestic Violence Survivors. Its not a wrapper of a mobile site -- there isn't a tool that exists like this currently on the market. The app has native features like Quick Exit and a Privacy cover. How can I get past this? What else is needed?
Replies
0
Boosts
0
Views
49
Activity
20h
The Apple developer registration process is taking too long.
Hello everyone, I paid for an Apple Developer subscription, but after about 5-6 days I still can't access my developer funds. Please help me access and activate my developer account. I haven't received a response for several days and I'm very upset. I don't know what to do. They're not responding to my requests and the phone number isn't listed anywhere, so I can't call. The Apple Developer subscription appears in the App Store subscriptions, money is being withdrawn from my account, the account isn't active, and my Apple Developer account is empty. This is my first and very frustrating experience. Order code: W1314135156
Replies
1
Boosts
0
Views
61
Activity
20h
Potential iOS26 regression on AASA file not download on app install
Original discussion pre iOS 26 Our app uses Auth0 with HTTPS callback, we've found the issue where AASA file is not ready immediately when app is initially launched, which is the exact issue from the above link. The issue seems mostly fixed on later versions on iOS 18, however, we are seeing some indications of a regression on iOS 26. Here's some measurement over the last week. | Platform | iOS 18 | iOS 26 | |---------------|----------|--------| | Adoption rate | 55% | 45% | | Issue seen | 1 | 5 | | Recover? | Yes | No | This only 1 iOS 18 instance was able to recover after 1 second after the first try, however, all iOS 26 instances were not able to recover in couple tens of seconds and less than 1 minute, the user eventually gave up. Is there a way to force app to update AASA file? Are there some iOS setting (like using a VPN) that could potentially downgrade the AASA fetch? Related Auth0 discussion: https://community.auth0.com/t/ios-application-not- recognizing-auth0-associated-domain/134847/27
Replies
15
Boosts
1
Views
1.3k
Activity
21h
AppStore.sync Replays the Latest Subscription Renewal into Transaction.unfinished on iOS 26.4 Sandbox
StoreKit2 Repro Notes: the latest renewal appears in Transaction.unfinished after restore (2026-04-05) 1. Issue Summary In the current project, during a normal cold launch: Transaction.latest(for:) returns a value for the weekly subscription Transaction.all returns the full subscription history chain Transaction.unfinished is empty However, after tapping Restore Purchases and calling AppStore.sync(), one "latest renewal" transaction appears in Transaction.unfinished. This behavior looks more like a system-side replay triggered by AppStore.sync() than a consistently unfinished transaction during a normal launch. 2. Affected Product Product: do.i.iapc.vip.week Transaction chain characteristics: All transactions belong to the same auto-renewable subscription chain originalTransactionID = 2000001143446796 The transaction that appears in unfinished is usually the latest or last renewal in the chain 3. Current Code Path During app startup: loadProducts() Debug snapshot for Transaction.latest(for:) Debug snapshot for Transaction.all Scan Transaction.unfinished refreshEntitlements() During restore purchases: Call AppStore.sync() Scan Transaction.unfinished refreshEntitlements() 4. Preconditions A Sandbox test account is used The weekly subscription do.i.iapc.vip.week already has multiple historical renewal transactions The subscription is already expired, so entitlements = 0 during a normal launch The issue is easier to reproduce on an iOS 26.4 device The issue was not consistently reproduced on another iOS 18.2 device 5. Reproduction Steps Path A: Normal cold launch Launch the app Observe the logs: LatestTransaction snapshot AllTransaction snapshot summary unfinished processing result Observed result: latest has a value all contains the full history chain unfinishedHandledCount = 0 Path B: Tap Restore Purchases Launch the app Tap Restore Purchases Trigger AppStore.sync() Observe the logs: restore started unfinished processing started unfinished transaction received Observed result: After restore, one "latest renewal" transaction appears in unfinished That same transaction does not necessarily appear during a normal cold launch 6. Expected Result If a transaction has already been successfully finished in the past, it should not appear again as unfinished after Restore Purchases. A stricter expectation is: During a normal cold launch, unfinished = 0 After tapping Restore Purchases, unfinished should still remain 0 7. Actual Result Actual behavior: Normal cold launch: unfinished = 0 After Restore Purchases: one "latest renewal" transaction appears again in unfinished This suggests that AppStore.sync() may replay the most recent historical subscription transaction. 8. Current Assessment Based on the current logs, the issue is more likely to be: Related to AppStore.sync() / StoreKit / Sandbox replay behavior on the system side Easier to reproduce on iOS 26.4 Less likely to be caused by a persistent app-side bug where finish() is missed during a normal startup flow Reasons: During a normal launch, unfinished = 0 The behavior is inconsistent across devices and OS versions, even with the same Sandbox account latest, all, and unfinished can be clearly separated during a normal cold launch 9. Suggested Engineering Position Suggested wording for internal or external communication: In the iOS 26.4 + Sandbox environment, calling AppStore.sync() may cause StoreKit to replay the latest historical subscription transaction into Transaction.unfinished. Since the same transaction does not necessarily appear during a normal cold launch, the issue currently looks more like a system/environment-specific behavior difference than an app-side bug where finish() is consistently missed during the regular startup path. 10. Additional Evidence That Can Be Collected If this needs to be escalated to the team or to Apple, the following would strengthen the report: Full log comparison before and after tapping Restore Purchases The same transactionId compared between normal launch and post-restore behavior Cross-device comparison on different iOS versions A minimal reproducible sample project and Sandbox test record
Replies
0
Boosts
0
Views
48
Activity
22h
Allow suggesting changes to topic and tags on other people's posts
Many posts on the Apple Developer Forums are categorized incorrectly. It would be nice if there was a way to suggest changes to the topic and tags that someone else's post is filed under and have these changes be able to be approved either by a forum admin or the original poster. FB22415719 https://github.com/feedback-assistant/reports/issues/789
Replies
0
Boosts
0
Views
23
Activity
22h
My iOS Swift application works on wide range of iPhones from iPhone X to iPhone 16 Pro Max
My iOS Swift application works without problems and tested on wide range of iPhones from iPhone X to iPhone 16 Pro Max when compiled by XCode 16.4. When compiled on Xcode 26 application it frequently crashes with 0x8BADF00D FRONTBOARD error in various places when running on iPhone 14 Plus, most often when typing or when scrolling the screen. It works without problems on iPhone 16 Pro Max independent of the version of Xcode used for compilation. I followed dozens of recommendations, introduced async/await, tasks, significantly reduced complexity of layouts, making uniform bubbles etc.etc. , tried to introduce many simplifications in the application, still I could not achieve elimination of frequent crashes on iPhone 14 Plus running iOS 26.3.1, no matter what I tried. Other than that all functionality seems to be working. This is the beginning of the Crash report: Termination Reason: Namespace FRONTBOARD, <RBSTerminateContext| domain:10 code:0x8BADF00D explanation: Failed to terminate gracefully after 5.0s ProcessVisibility: Unknown ProcessState: Running WatchdogEvent: process-exit WatchdogVisibility: Foreground WatchdogCPUStatistics: ( "Elapsed total CPU time (seconds): 9.330 (user 7.670, system 1.660), 29% CPU", "Elapsed application CPU time (seconds): 5.358, 17% CPU" ) Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 ??? 0x1b184c7b0 ??? 1 libswiftCore.dylib 0x19de70694 ContiguousArrayStorage.__deallocating_deinit + 95 2 libswiftCore.dylib 0x19dd013a8 swift_release_dealloc + 55 3 libswiftCore.dylib 0x19dd01fc4 bool swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1>>::doDecrementSlow<(swift::PerformDeinit)1>(swift::RefCountBitsT<(swift::RefCountInlinedness)1>, unsigned int) + 151 4 SwiftUICore 0x1aaee2ca4 LazyLayoutViewCache.updatePrefetchPhases() + 1315 5 SwiftUICore 0x1ab129068 specialized LazySubviewPlacements.updateValue() + 4251 6 SwiftUICore 0x1ab14a23c specialized implicit closure #1 in closure #1 in closure #1 in Attribute.init(:) + 23 7 AttributeGraph 0x1d2be8e48 AG::Graph::UpdateStack::update() + 499 8 AttributeGraph 0x1d2beacf0 AG::Subgraph::update(unsigned int) + 959 9 SwiftUICore 0x1aace5b44 specialized GraphHost.runTransaction(:do:id:) + 387 10 SwiftUICore 0x1aac772d8 GraphHost.flushTransactions() + 183 11 SwiftUI 0x1a9a0fa80 <deduplicated_symbol> + 23 12 SwiftUICore 0x1aac71578 partial apply for closure #1 in ViewGraphRootValueUpdater.updateGraph(body:) + 27 13 SwiftUICore 0x1aac73f54 ViewGraphRootValueUpdater._updateViewGraph(body:) + 231 14 SwiftUICore 0x1aac714d0 ViewGraphRootValueUpdater.updateGraph(body:) + 179 15 SwiftUI 0x1a9a0fa4c closure #1 in closure #1 in closure #1 in UIHostingView.beginTransaction() + 171 16 SwiftUI 0x1a9a0f998 partial apply for closure #1 in closure #1 in closure #1 in UIHostingView.beginTransaction() + 23 17 SwiftUICore 0x1aac69aa8 closure #1 in static Update.ensure(:) + 55 18 SwiftUICore 0x1aac69cec static Update.ensure(:) + 99 19 SwiftUI 0x1a9a0f970 partial apply for closure #1 in closure #1 in UIHostingView.beginTransaction() + 79 20 SwiftUICore 0x1aad97e10 <deduplicated_symbol> + 27 21 SwiftUICore 0x1aac5aab0 specialized static NSRunLoop.flushObservers() + 363 22 SwiftUICore 0x1aac5a91c @objc closure #1 in static NSRunLoop.addObserver(:) + 27 23 CoreFoundation 0x1a0c87ea0 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 35 24 CoreFoundation 0x1a0c7158c __CFRunLoopDoObservers + 647 25 CoreFoundation 0x1a0c48740 __CFRunLoopRun + 923 26 CoreFoundation 0x1a0c47a6c CFRunLoopRunSpecificWithOptions + 531 27 GraphicsServices 0x2455d9498 GSEventRunModal + 119 28 UIKitCore 0x1a66f7df8 -[UIApplication run] + 791 29 UIKitCore 0x1a66a0e54 UIApplicationMain + 335 30 SwiftUI 0x1a99b8d20 closure #1 in KitRendererCommon(:) + 167 31 SwiftUI 0x1a99b58d4 runApp(:) + 111 32 SwiftUI 0x1a99b53c0 static App.main() + 171
Replies
0
Boosts
0
Views
23
Activity
22h
NEURLFilter production build fails with _NSURLErrorPrivacyProxyFailureKey — how to provision OHTTP privacy proxy for bundle?
Summary I'm implementing NEURLFilter with the com.apple.developer.networking.networkextension.url-filter-provider entitlement for a system-wide URL filtering feature. The feature works perfectly in development-signed builds (connecting successfully to my PIR server over extended testing) but every production-signed build fails before any network call is made. NEURLFilterManager reports .serverSetupIncomplete (code 9). After installing the NetworkExtension debug profile, the unredacted com.apple.CipherML logs reveal the cause: no privacy proxy is provisioned for this bundle identifier, and the connection is configured proxy fail closed. Environment iOS 26 Entitlement: com.apple.developer.networking.networkextension.url-filter-provider Extension point: com.apple.networkextension.url-filter-control PIR server configured via NEURLFilterManager.setConfiguration(...) Privacy Pass issuer configured Dev-signed builds: working correctly, connecting to the PIR server Production-signed builds (both TestFlight and distribution): failing identically The Error Chain Surfaced to the app via NEURLFilterManager.lastDisconnectError: NEURLFilterManager.Error.serverSetupIncomplete (code 9) ← NEAgentURLFilterErrorDomain Code 3 ← com.apple.CipherML Code 1100 "Unable to query status" ← com.apple.CipherML Code 1800 (error details were logged and redacted) After installing the VPN (NetworkExtension) debug profile, the unredacted com.apple.CipherML subsystem shows: queryStatus(for:options:) threw an error: Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={ _NSURLErrorNWPathKey = satisfied (Path is satisfied), interface: en0[802.11], ipv4, dns, uses wifi, LQM: good, NSErrorFailingURLKey = https://<my-pir-server>/config, NSUnderlyingError = { Error Domain=NSPOSIXErrorDomain Code=50 "Network is down" }, _NSURLErrorPrivacyProxyFailureKey = true, NSLocalizedDescription = "The Internet connection appears to be offline." } The critical diagnostic line in the com.apple.network subsystem is: nw_endpoint_proxy_handler_should_use_proxy Proxies not present, but required to fail closed And the connection setup shows the proxy fail closed flag is mandatory for the connection: [C... ... Hostname#...:443 quic, bundle id: <my-bundle-id>, attribution: developer, using ephemeral configuration, context: NWURLSession (sensitive), proxy fail closed] start The network path itself is healthy (Wi-Fi good, DNS resolves correctly), but the connection is explicitly configured to fail closed if no proxy is present, and no proxy is provisioned for this bundle identifier. The entire failure happens in approximately 18 ms, far too fast for any network round-trip, confirming no traffic ever leaves the device. What I've Verified The entitlement is present in the distribution build The NEURLFilterControlProvider extension loads and returns a valid Bloom filter prefilter (with a tag that round-trips correctly between extension and framework) NEURLFilterManager.setConfiguration(pirServerURL:pirPrivacyPassIssuerURL:pirAuthenticationToken:controlProviderBundleIdentifier:) accepts all four parameters without error Development-signed builds of the same bundle identifier connect successfully to the same PIR server On production-signed builds, zero requests reach the PIR server — failure is purely client-side, before any network activity The Question How does the OHTTP privacy proxy get provisioned for a bundle identifier so that production builds can successfully use NEURLFilter? Specifically: Is there a Capability Request form I need to submit for url-filter-provider? I cannot find one in the Capability Requests section of my developer portal. Should I be running my own OHTTP gateway (for example using swift-nio-oblivious-http), and if so, does Apple then need to provision routing from their OHTTP relay to my gateway URL? Is the OHTTP relay path meant to be automatic once the entitlement is active, and if so, is there a specific activation step I'm missing? Is there any way to verify the current provisioning state for a specific bundle identifier from the developer portal? I can provide the full sysdiagnose and unredacted bundle/server details privately to an Apple engineer if that would help diagnose. I'd prefer to keep them out of a public post. Thanks!
Replies
0
Boosts
0
Views
57
Activity
1d
iOS 26 TabBar Remove Selected Capsule
I have subclassed UITabBar and created a custom look and feel for it. On iOS 18, the tab bar appears as expected. On iOS 26, however, a default Liquid Glass-style capsule selection indicator appears behind the selected tab item. I tried using UITabBarAppearance, including selectionIndicatorTintColor = .clear and selectionIndicatorImage = nil / empty image, but the capsule-style selected background still appears. Is this selection treatment part of the new default system rendering in iOS 26, and if so, is there any supported way to remove or disable it while still using UITabBar?
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
2
Boosts
0
Views
89
Activity
1d