Overview

Post

Replies

Boosts

Views

Activity

NSLocationDefaultAccuracyReduced not taking effect after app update (YES -> NO) for first-time location authorization
Hello Apple Developer Technical Support / Core Location Team, I’m requesting clarification on the effective timing of the Info.plist key NSLocationDefaultAccuracyReduced. We shipped Version A with NSLocationDefaultAccuracyReduced = YES (reduced accuracy by default). In Version B we changed it to NO. After updating to Version B, on devices/users that have not previously granted location authorization for our app, the first authorization flow still behaves as if reduced accuracy is the default (i.e., the same behavior as Version A). Could you please confirm: When iOS evaluates/caches NSLocationDefaultAccuracyReduced (install time, app launch, or at first authorization prompt)? After an update changes this key from YES to NO, should the new value apply to users who have never authorized location for the app? Environment: Iphone 16 (IOS 26.0) I can provide a sysdiagnose and additional logs if needed. Thank you, Jack
0
1
124
1w
Sharing IAPs between apps
I have had an App (AngelNav) available on the App Store since 2023 which was written for iOS v15.0 or later. I am working on a new version which has the same functionality, but a radically new interface as well as taking advantage of the latest features in SwiftUI. I am writing it from the bottom up for iOS26 to ensure a clean codebase to ease maintenance. As I understand it I have the following options: Issue an update to the existing app. This is easy to do but creates a problem for those users with iOS26 who prefer the old interface. In addition I can't see a way to implement bug fixes for previous versions Create a new app (AngelNavNeo). This would allow users with iOS26 who prefer the old interface to stick with it, and I can issue bug fixes on the old version. However, there is no way to share already purchased in-app purchases between versions without a server-side solution and the need for user accounts on my server (neither of which I want to do). Is my understanding is correct, and have I missed anything?
0
0
140
1w
URGENT: App & Developer Name completely missing from Search Index (2.5 weeks live, 2k+ DLs)
Hi there, I’m writing this because I’m feeling incredibly frustrated and downbeat. I launched my app about two and a half weeks ago, and while it’s been a success in terms of users—with over 2k downloads and 35 five-star reviews via Reddit—it is currently invisible when searched for on the App Store (it can be found by direct link or Google search). Even when searching for the exact app name or my developer name (Robert Lothian), nothing comes up. It’s as if the app doesn't exist in your search database. To make matters worse, the app was featured in several articles, podcasts, and live streams last week. Because of this search issue, potential users who heard about the app couldn't find it. This has not only stunted my growth during a critical launch window but I fear it is causing genuine damage to my reputation as a developer. I raised a ticket last Saturday (102811242184) but haven't heard anything back, I just did a follow-up ticket just now, as it has been a week. I truly believe this is a backend synchronisation issue that just needs a quick look from the engineering team to reset the index for my App ID. Please, can someone look into this or escalate it? I’ve worked so hard on this launch, and it’s heart-wrenching to see it blocked by a technical glitch. App Name: Archivist Browser App ID: 6756570654 Best regards, Robert Lothian
0
0
133
1w
Developer Account Registration Still Processing After 2+ Weeks
I registered a developer corporate account and completed the payment on January 2. However, up to today, the status has not changed and still shows the message: “We’re processing your registration request. Your registration ID is ***.” I understand that the review process usually takes about 1–2 weeks. In this situation, is there any recommended way to move to the next step more quickly?
0
0
104
1w
Gathering Required Information for Troubleshooting Apple Pay In-App Provisioning or In-App Verification Issues
Hi, You're here because you've had issues with your implementation of In-App Provisioning Extensions for Apple Pay In-App Provisioning or In-App Verification. To prevent sending sensitive credentials in plain text, create a new report in Feedback Assistant to share the details requested below with the appropriate log profiles installed. Gathering Required Information for Troubleshooting Apple Pay In-App Provisioning or In-App Verification Issues While troubleshooting Apple Pay In-App Provisioning or In-App Verification, it is essential that the issuer is able to collect logs on their device and check those logs for error message. This is also essential when reporting issues to Apple. To gather the required data for your own debugging as well as reporting issues, please perform the following steps on the test device: Install the Apple Pay and Wallet profiles on your iOS or watchOS device. If the issue occurs on Mac, continue to Step 2. Reproduce the issue and make a note of the timestamp when the issue occurred, while optionally capturing screenshots or video. Gather a sysdiagnose on the same iOS or watchOS device, or on macOS. Create a Feedback Assistant report with the following information: The bundle IDs App bundle ID Non-UI app extension bundle ID (if applicable) UI app extension bundle ID (if applicable) The serial number of the device. For iOS and watchOS: Open Settings > General > About > Serial Number (tap and hold to copy). For macOS: Open the Apple () menu > About This Mac > Serial Number. The SEID (Secure Element Identifier) of the device, represented as a HEX encoded string. For iOS and watchOS: Open Settings > General > About > SEID (tap and hold to copy). For macOS: Open the Apple () menu > About This Mac > System Report > NVMExpress > Serial Number. The sysdiagnose gathered after reproducing the issue. The timestamp (including timezone) of when the issue was reproduced. The type of provisioning failure (e.g., error at Terms & Conditions, error when adding a card, etc.) The issuer/network/country of the provisioned card (e.g., Mastercard – US) Last 4 digits of the FPAN Last 4 digits of the DPAN (if available) Was this test initiated from the Issuer App? (e.g., yes or no) The type of environment (e.g., sandbox or production) Screenshots or videos of errors and unexpected behaviors (optional). Important: From the logs gathered above, you should be able to determine the cause of the failure from PassbookUIService, PassKit or PassKitCore, and by filtering for your SEID or bundle ID of your app or app extensions in the Console app. Submitting your feedback Before you submit to Feedback Assistant, please confirm the requested information above is included in your feedback. Failure to provide the requested information will only delay my investigation into the reported issue within your Apple Pay client. After your submission to Feedback Assistant is complete, please respond in your existing Developer Forums post with the Feedback ID. Once received, I can begin my investigation and determine if this issue is caused by an error within your client, a configuration issue within your developer account, or an underlying system bug. Cheers, Paris X Pinkney |  WWDR | DTS Engineer
0
0
2.1k
1w
Audio DSP Processing Issue / Metallic Ringing Artifacts when recording acoustic instruments on iPhone 17 Pro Max
Description: I have identified a specific issue when recording acoustic guitar and other instruments on the iPhone 17 Pro Max using native applications (Voice Memos, Camera). The recordings contain an unnatural metallic resonance (ringing artifacts) that should not be present. Testing and Methodology: Hardware Verification: Initially, I suspected a hardware defect in the audio chip or microphone. However, extensive testing with third-party software suggests this is likely a software-level issue. AudioShare Test: I conducted a test using the AudioShare app in "Measurement Mode" (which bypasses standard iOS system-wide audio processing). In this mode, the audio remains perfectly clean, and the metallic ringing disappears entirely. Conclusion: The issue is rooted in the DSP (Digital Signal Processing) algorithms that iOS applies for noise suppression or voice enhancement. These algorithms appear to misinterpret the high-frequency overtones of acoustic instruments as background noise and attempt to "filter" them, resulting in audible digital artifacts. Comparison Results: This issue has not been observed on devices from other brands or on older iPhone models (preliminary tests suggest older versions handle this better). Notably, the problem persists even in GarageBand, as the app still utilizes certain system-level processing layers. Proposed Solution: I suggest adding a "Raw Audio" or "Instrument Mode" toggle within the Microphone/Audio settings for native apps. This mode should disable aggressive DSP processing, similar to how the AVAudioSession.Mode.measurement works in specialized apps. Attachments: I am attaching 4 archives, including a final "Measurement Mode" folder with comparative samples (Measurement Mode vs. Standard Mode). The artifacts are most prominent when monitored through headphones.
0
0
93
1w
Apple Developer Program Enrollment: pending
Hello everyone, I'm currently waiting for my Apple Developer Program enrollment to be approved and wondering if my timeline is normal. My situation: Payment of $99 USD: ✅ Completed (have invoice and order number) Government-issued photo ID: ✅ Submitted Confirmation email received: ✅ Yes - "Thank you for providing the documents we requested. We will review them and follow up with you within two business days" Days since confirmation email: 3+ business days The email stated they would follow up within two business days, but it's now been more than three business days with no update. My questions: Is it normal for the review to take longer than the stated "two business days"? For those who were approved, did you receive multiple emails throughout the process, or just a final approval email? Has anyone experienced similar delays? What was the outcome? Just want to make sure nothing is stuck or requires additional action from my side. Thanks for any insights!
0
0
136
2w
Wallet Pass eligibility for age-restricted product loyalty program
Hello everyone, My team is exploring the implementation of an Apple Wallet pass for a loyalty program linked to a brand in an age-restricted product category. The intended use cases for the Wallet pass are: Member identification at events — Quick verification at brand events or exclusive venues, with tier-based perks (e.g., priority entry for higher tiers) Support services — Members present their card at retail locations to receive assistance Tier and points display — Dynamic visual changes based on loyalty level and current points balance Notifications — Pass updates for expiring points, upcoming events, or relevant announcements The pass would function as a standard Store Card (membership/loyalty) — no payments, no stored value, just identification and informational display. Before investing development effort, I'd like to understand: Has anyone successfully implemented Wallet passes for brands in restricted categories (tobacco, alcohol, etc.)? Are there specific guidelines or restrictions I should be aware of beyond the standard Wallet documentation? Is there a recommended channel to get official guidance from Apple on eligibility before building? Any insights or experiences would be appreciated. Thanks!
0
0
143
3w
Sandbox: Pending transaction keeps replaying on app start / when switching users — any solution?
Hi, We're seeing a recurring issue in Sandbox only with in-app subscriptions (StoreKit 2). Hoping someone has run into this and has a workaround or explanation. What happens A subscription purchase (e.g. Yearly) is made in Sandbox. For whatever reason, the transaction stays pending in the queue. On the next app launch (or when a different user logs into the app on the same device), the store returns this same pending transaction via getAvailablePurchases() / the purchase queue. Our app sends that transaction to our backend for validation and updates the currently logged-in user in our database. So the same transaction can end up being applied to another user if they log in on the same device after the original purchaser. We call finishTransaction after successful validation, but the pending transaction still reappears in subsequent sessions or for another user on the same device. So in short: one Sandbox purchase stays "pending" and is replayed every time we start the app or switch accounts, and we can't rely on it being tied to a single user. Environment Sandbox only (we haven't shipped to production yet). StoreKit 2 / modern App Store Server API (transaction ID validation). We run getAvailablePurchases() on connect and process pending purchases once per session; we then call finishTransaction only after our server has validated and updated the user. Same device, multiple app accounts (different app users, same Sandbox Apple ID or same device). What we're trying to understand Is it expected in Sandbox that one transaction can be delivered again and again (on each launch or for each user on the device) until something clears it? Is there a recommended way to clear or ignore a specific pending transaction in Sandbox when we've already validated it for a given user (e.g. idempotency key, or a way to "consume" it so it doesn't replay)? Has anyone else hit this "same pending transaction replaying for different users / on every launch" in Sandbox and found a reliable approach (e.g. server-side idempotency, or a StoreKit/Sandbox step we're missing)? We've added server-side protection (one transaction → one user) so the same purchase isn't credited to multiple accounts, but we'd like to understand if there's a proper way to handle or clear this pending state in Sandbox. Thanks in advance.
0
0
125
2w
SwiftUI WebView: Is action.target == nil a Reliable Way to Handle New Window Requests?
In WKWebView, there is the WKUIDelegate method: func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? {} This delegate method provides a callback when a new window (for example, target="_blank") is requested in the web view. However, in native SwiftUI (iOS 26), WebView / WebPage APIs do not provide an equivalent delegate method to handle new window requests. As a workaround, I am using the following method: public func decidePolicy(for action: WebPage.NavigationAction, preferences: inout WebPage.NavigationPreferences) async -> WKNavigationActionPolicy {} In this method, when action.target == nil, I treat it as a new window request. My question: Is relying on action.target == nil in decidePolicy a reliable and future-safe way to detect new window requests in SwiftUI’s WebView, or is there a better or more recommended approach for handling target="_blank" / new window navigation in the SwiftUI WebView APIs? Code: public func decidePolicy(for action: WebPage.NavigationAction, preferences: inout WebPage.NavigationPreferences) async -> WKNavigationActionPolicy { guard let webPage = webPage else { return .cancel } // Handle case where target frame is nil (e.g., target="_blank" or window.open) // This indicates a new window request if action.target == nil { print("Target frame is nil - new window requested") // WORKAROUND: Until iOS 26 WebPage UI protocol is available, we handle new windows here // Try to create a new WebPage through UI plugins if handleCreateWebPage(for: webPage, navigationAction: action) != nil { // Note: The new WebPage has been created and published to the view return .allow } } return .allow }
0
1
268
1w
SwiftUI Performance vs identity
In SwiftUI, it is recommended not to store ViewBuilder closures in sub-views but instead evaluate them directly in init and store the result (example: https://www.youtube.com/watch?v=yXAQTIKR8fk). That has the advantage, as I understand it, that the closure doesn't need to be re-evaluated on every layout pass. On the other side, identity is a very important topic in SwiftUI to get the UI working properly. Now I have this generic view I'm using with a closure which is displayed in two places (HStack & VStack). Should I store the closure result and get the performance improvements, or evaluate it in place and get correct identities (if that is even an issue)? Simplified example: struct DynamicStack<Content: View>: View { @ViewBuilder var content: () -> Content var body: some View { ViewThatFits(in: .horizontal) { HStack { content() } VStack { content() } } } } vs struct DynamicStack<Content: View>: View { @ViewBuilder var content: Content var body: some View { ViewThatFits(in: .horizontal) { HStack { content } VStack { content } } } }
0
1
68
2w
Issue With Apple Pay Express
We are facing an issue with Apple Pay address details while customers are placing orders on our production site. By default, the following values are being passed during checkout: First Name: ApplePay Last Name: Express Address: ApplePay Street When we manually enter these same details, our validation correctly prevents the order from being placed and displays an appropriate error message. However, on our production site, real customers are still able to successfully place orders with these exact details. Could you please help us understand: How these orders are being allowed to proceed despite the validation? Is this behaviour expected from Apple Pay ? How can we prevent orders from being placed with such placeholder address details? Please let us know if you need any additional information from our side. We have also attached an image showing the address details and the corresponding order number for reference. Thanks in advance for your support.
0
0
74
2w
W-8BEN tax update sent via Contact Us — no response for over a week. What should I do?
Hi everyone, I submitted a request through Contact Us in App Store Connect to update my W-8BEN tax form more than a week ago. Since then, nothing has changed in my account and I haven’t received any reply. For those who’ve dealt with this before: Is this delay normal? Should I resubmit the request or wait? Is there a faster or correct way to get the tax update processed? Any advice or shared experience would really help. Thanks in advance.
0
0
130
2w
TestFilght updates to previous build Version automatically
Hello, I’d like to share an issue we recently experienced with TestFlight and ask whether this behavior is expected. Environment App version string: 1.0.0 Multiple builds uploaded via CI/CD Both external TestFlight testing and internal CI builds exist Testers had automatic updates enabled in TestFlight What happened We uploaded build 1.0.0 (2601161653) and assigned it to an external TestFlight group. Testers installed this build and were testing normally. Later, we uploaded a newer build 1.0.0 (5) and reassigned the same external testers to this build. Testers successfully updated to 1.0.0 (5) and continued testing. After some time (without any manual action from testers), testers received a system notification saying that: “The App has been updated. Version 1.0.0 (2601161653) was automatically downloaded and installed.” When opening TestFlight, the app showed 1.0.0 (5) again as available for update, meaning the device had already been rolled back to 1.0.0 (2601161653). Additional context There are many archived builds in App Store Connect due to CI/CD testing. Some CI builds share the same version string but differ only in build number. External test groups were only explicitly assigned to build 1.0.0 (5) at the time of the rollback. Build 2601161653 did not have any external test group assigned at that moment. No App Store release or metadata changes occurred during this time. Questions If a tester’s currently installed build becomes temporarily unavailable (e.g. due to eligibility, internal status changes, or TestFlight processing), does TestFlight automatically fall back to a previously approved build? Is this automatic rollback behavior an intended part of TestFlight’s build availability logic, especially when multiple builds with the same version string exist? Can frequent CI/CD uploads (without consistent external group assignment) influence which build TestFlight considers “eligible” or “latest” for testers? Summary From our observation, it appears that when the currently tested build temporarily lost eligibility, TestFlight automatically installed a previous build that was still considered available, even though a newer build existed. We’d appreciate any clarification on whether this behavior is expected or if there are best practices to avoid this situation when using CI/CD with TestFlight. Thank you.
0
0
98
2w
SwiftUI/WKWebView app migrated from React Native to SwiftUI shows blank/blue screen for some users after App Store update
I’m hoping to get some insight from Apple engineers or developers who have seen similar behavior. Background We previously had a React Native / Expo iOS app in production for several years. Recently, we rebuilt the app completely from scratch as a native SwiftUI app using WKWebView (no shared code, no RN runtime). The new app architecture is: Native SwiftUI container WKWebView loading a remote web app Firebase Analytics & Crashlytics Push notifications (APNs + FCM) No local database, no persistent native state Migration scenario Users update the app via the App Store: Old app: React Native / Expo New app: native SwiftUI + WKWebView For most users, the migration works fine. However, for a about 10% of users, the following happens: The issue After updating from the old React Native app to the new SwiftUI app: The app opens The native landing screen appears (solid black OR blue background, depending on which most recent version if being installed) The app never transitions to the WKWebView No crash Force-quitting does not help Deleting the app completely and reinstalling does fix it 9/10 times, but NOT ALWAYS. From the user’s perspective: “The app is stuck on a black OR blue screen forever.” Important detail Most of the times, a full uninstall + reinstall FIXES the issue, but funny enough, NOT always.. In some cases, the issue persists: What we’ve already tried Over the last weeks, multiple iOS developers have investigated this. We have implemented and/or tested: Full rebuild in SwiftUI (no RN remnants) Aggressive cleanup on first launch after update: -- UserDefaults cleanup -- WKWebsiteDataStore cleanup -- URLCache / cookies cleanup Timeouts and fallbacks so the UI never blocks indefinitely Explicit logging of: -- app_open -- session_start -- webview_init -- webview_load_start / finish -- blank screen detection Handling: -- WKWebView content process terminated -- network / TLS / DNS errors Added a native SwiftUI landing screen (in the latest version) so users no longer see a black screen, but now they see a BLUE screen when the transition fails Observations from Analytics & Crashlytics No native crashes Very high user engagement (~99%) Very low blank-screen detection (~1–2%) The issue does not appear to be mass-scale But support still receives complaints daily from affected users This suggests a device / iOS / network-specific edge case, not a general migration failure. Hypotheses (not confirmed) We suspect one of the following, but haven’t been able to prove it: WKWebView failing to initialize under specific conditions after App Store updates TLS / ATS / CDN edge behavior affecting first WKWebView load iOS lifecycle timing issue when transitioning from SwiftUI landing view to WKWebView OS-specific WebKit state that survives reinstall (keychain? system WebKit state?) ISP / DNS / IPv6-related issues on first launch What we’re looking for We would really appreciate insight on: Are there known cases where WKWebView fails silently after an App Store update, even after reinstall? Is there any system-level WebKit state that survives app deletion? Are there best practices for transitioning from a SwiftUI landing view to WKWebView to avoid dead-ends? Any known iOS versions / device classes where this behavior is more common? Any debugging techniques beyond Crashlytics / Analytics that could surface what WebKit is failing on? We’re not looking for generic “clear cache” advice — we’ve already gone far down that path. We’re trying to understand whether this is a known WebKit edge case or something we are fundamentally missing. Thanks in advance for any pointers or shared experiences.
Topic: UI Frameworks SubTopic: SwiftUI
0
0
65
3w