Overview

Post

Replies

Boosts

Views

Activity

Detect Configuration Profile state change (DoH .mobileconfig) without VPN/MDM/supervised — any API I missed?
Is there any iOS API, framework, or entitlement (public or beta) that lets an app detect when a user disables or removes a Configuration Profile (specifically a DNS-over-HTTPS profile) — without VPN extension, MDM, or supervised mode? Use case: I need to know server-side, in real time, when the user toggles off a .mobileconfig DoH profile they previously installed. Things I've already reviewed and ruled out: NetworkExtension (NEDNSSettingsManager — only fires while app is running) BGTaskScheduler (iOS-scheduled, not real-time) NEFilterDataProvider (requires supervised) VPN / MDM / supervised Anything I'm missing?
0
0
1
8m
BLE LE Privacy Issue with iPad A16 (11th Gen?) – Peripheral Not Responding After MTU Exchange
Hi all, I'm encountering a BLE issue with the newer iPad models featuring the A16 Bionic chip (e.g., iPad 11th Gen). I have an iOS application that runs as a BLE peripheral, and it used to work flawlessly with various central devices. 📱 Device Specs Model: iPad (A16 Bionic) OS: iPadOS 18.6 ✅ Working Setup (Before): iOS app acts as a BLE peripheral (advertises a custom service). Central device (Windows/Linux/Android) could: Discover advertisements Connect to the peripheral Exchange MTU Discover GATT services Communicate bidirectionally ❌ Issue with iPad A16 (Newer Devices): Central device receives advertisements and connects. MTU exchange request is sent by central, but iPad A16 does not respond. The BLE link remains active but only transmits empty PDUs, and communication never proceeds. Same issue observed with third-party apps like BLE HID keyboard — they also fail to connect or communicate on A16 iPads but work on older devices (e.g., iPad 10th Gen and below). 🔍 Debugging So Far: Confirmed that MTU Exchange Request is compliant (Client Rx MTU = 527). Works fine with iPad 10th Gen and earlier. Works with Android, Windows, and even Linux central stacks with older iPads. A16-based iPads seem to silently drop or ignore the MTU request. 🧪 Suspected Cause: Possible regression or behavioral change in LE Privacy handling on newer iPads. Possibly tied to iPadOS version or Bluetooth controller firmware. 🙏 Looking for: Anyone else facing similar BLE issues on iPads with A16? Any known changes to BLE LE Privacy, MTU negotiation, or connection behavior in iPadOS on A16 devices? Any workarounds, entitlements, or configuration changes that fixed the issue? Would appreciate any insights or suggestions. Thank you!
4
1
138
9m
App Review times
Vox Dictum (macOS) submitted for review on May 4, still showing 'Waiting for Review' after 5 days. Support case 20000112075878 raised on May 8 with no response yet. First submission, includes auto-renewable subscriptions. Is this timeline normal for a first macOS app with subscriptions? Thank you, M
0
0
9
11m
Production StoreKit silently omits one approved auto-renewable subscription product — sandbox returns it correctly, sudden onset 2026-05-09
Hi all, Reporting an active production issue in case anyone else is seeing the same pattern, or has insight into what could cause this. Symptom As of 2026-05-09 morning, one specific auto-renewable subscription product is silently absent from Production StoreKit responses on our live App Store build. The product is still 'Approved' in App Store Connect, all metadata is intact, no error code is returned — the product simply does not appear in the products array. The other 3 products in the same subscription group continue to work normally. 100% of production users are affected. Setup App: live on App Store, version 1.0.0 (build 8) Subscription group with 4 auto-renewable products: standard_monthly_799 ✅ returns correctly standard_annual_6999 ✅ returns correctly unlimited_monthly_1299 ❌ MISSING from production response unlimited_annual_9999 ✅ returns correctly SDK: purchases_flutter (RevenueCat) → StoreKit Same physical device, same code, same RC config behaves correctly in Sandbox — all 4 products are returned and a sandbox purchase of unlimited_monthly_1299 succeeds. Timeline 2026-05-08: working correctly, purchases succeeding normally 2026-05-09 morning: product silently disappears from production StoreKit responses No app update was submitted between those dates No App Store Connect changes were made Onset was simultaneous across all production users at one timestamp What I've verified App Store Connect: Product status: Approved All territories enabled, all prices configured (no N/A in any territory) Subscription group correctly contains all 4 products No 'Submit for Review' pending changes Product attached to live app version 1.0.0 (8) Tax category: Match to parent app Family Sharing: Off (consistent with the working products) Paid Applications Agreement: Status: Active Banking and Tax forms: Active RevenueCat dashboard: All 4 products show Store Status: Approved Default offering contains all 4 packages iOS attachment for the affected product is intact No warnings or sync errors Sandbox StoreKit (today): flutter run (debug) on physical device → all 4 products returned flutter run --release on physical device → all 4 products returned Sandbox purchase of unlimited_monthly_1299 succeeds Production StoreKit (today, broken): App Store-downloaded 1.0.0 (8) on multiple users' devices Multiple Apple IDs / multiple devices / multiple regions — all reproduce Only unlimited_monthly_1299 affected; other 3 products fine Why this looks server-side Sudden simultaneous onset across all users No code or config change preceded onset Sandbox unaffected, only Production affected Single product affected, not the whole subscription group or app No error returned — silent omission only Cannot reproduce with locally signed builds, only with App Store-distributed binary This pattern is consistent with a server-side product indexing or fronting issue specific to one product in Production StoreKit. As a developer I don't have visibility into Apple's product-serving infrastructure to investigate further — looking for guidance from anyone who has seen this before. Questions for the community Has anyone else seen a single auto-renewable subscription silently drop out of Production StoreKit responses while remaining Approved in ASC, with no error code returned? Is there any internal product-state flag (beyond what's exposed in the ASC UI) that could cause Production StoreKit to silently omit a product? Anything similar to a hidden 'review hold' or 'price tier reconciliation' state? Has the asymmetry between RevenueCat package identifiers (Standard uses RC's $rc_monthly/$rc_annual default identifiers, Premium uses custom premium_monthly/premium_annual identifiers) ever been implicated in this kind of failure? RC support has been notified, but worth asking publicly. For anyone who has resolved a similar issue: what action ended up clearing it — ASC re-save, RC re-sync, Apple Support escalation, or did it self-resolve after Apple-side cache propagation? Filings in progress ASC Contact Us ticket: filed Apple DTS technical incident: filed RevenueCat support ticket: filed Feedback Assistant report: in progress Will update this thread with the resolution path once we have one. Thanks, — Kin Pong Lo (developer, Alice: AI English Tutor)
0
0
1
11m
Family Controls entitlement: no response for over 2 weeks
Hi, I submitted my Family Controls entitlement requests on April 21 for my iOS app, but I still haven’t received an approval, rejection, or any status update. This is blocking my ability to properly test and move forward with the app, since it depends on the Screen Time / Family Controls APIs. Has anyone had a similar delay recently? Is the recommended next step to file a code-level support request with my Team ID, or should I continue waiting? Thanks.
2
0
76
12m
Developer program renewal blocked: "This item is currently not available in your country or region" — phone escalations not returned for 3 weeks
Posting here in hope of getting this in front of someone at Apple who can actually look at our account, since three weeks of phone support has produced no follow-up. Setup: Organizational Apple Developer Program membership, active through 2024 Did not renew in 2024 (no apps shipping that year) Same country/region as every prior successful renewal; nothing has changed on our side Have a completed app ready to ship right now Error: During renewal, the payment page returns: "This item is currently not available in your country/region." Reproduced consistently across browsers, networks, and payment methods. What I've tried: Renewing via the existing org account → same error every attempt. Enrolling a new org Developer account → enrollment is auto-cancelled with the message that our organization already has a membership and we must use the existing one. Phoned Apple Developer Program Support 10+ times over the past three weeks. Every call ends with the agent stating the issue requires senior advisor escalation and that I will be contacted by email. No email has ever arrived. What I need: A path to a senior Developer Program Support advisor who can actually look at our case. Happy to share Team ID and Apple ID through any official channel. If anyone from Apple sees this - our case has been open via phone support for three weeks with zero follow-up. Any pointer would be hugely appreciated.
3
0
95
12m
Apple Watch Notification Center timestamp drift on notifications processed by a Notification Service Extension
I'm seeing a timestamp display issue on Apple Watch Notification Center, and I'd like to confirm whether this is a known watchOS behavior or whether there's a setup mistake on our side. Symptom The same APNs notification displays the correct time on iPhone Notification Center and on the initial Apple Watch banner. After the Watch screen turns off and the user later opens Notification Center on Apple Watch, the same notification may show an incorrect relative timestamp such as "3 hours ago" or even "yesterday". The drift is per-notification and persists for that notification until it's dismissed. iPhone NC always shows the correct time. WhatsApp tested side-by-side on the same iPhone/Watch pair does not show this drift. Setup iOS 26.4.2 on iPhone 16 Pro watchOS 26.4 on Apple Watch Series 10 App with paired Apple Watch A UNNotificationServiceExtension that decrypts E2EE message previews and applies Communication Notification enrichment via INSendMessageIntent and content.updating(from:) Production APNs environment, TestFlight builds No beta software Isolation tests already performed Test mutable-content NSE invoked Drift on Watch NC Minimal APNs (alert + sound only) no no no drift NSE skips content.updating(from:), INInteraction.donate/delete (still calls them as no-op via diagnostic build) yes yes — modifies content drift NSE bypasses ALL Intents/Communication Notification APIs (no INPerson, no INSendMessageIntent, no avatar, no updating(from:)); just modifies title/body/sound/category and returns the mutable copy yes yes — modifies content drift Production-like APNs payload (thread-id, target-content-id, category, sound, badge, custom userInfo) but WITHOUT mutable-content no no no drift Eliminated as causes: content.updating(from:), INSendMessageIntent, INInteraction.donate, INInteraction.delete(with:), INPerson/INPersonHandle (not even constructed in test 3), avatar fetching, thread-id, target-content-id, category, sound, badge, custom userInfo, custom createdAt timestamp, stale Siri/Apple Intelligence history (cleared manually on iPhone and Watch). The pattern The only consistent variable distinguishing the no-drift cases from the drift cases is whether mutable-content: 1 is set on the APNs payload (i.e. whether the UNNotificationServiceExtension is invoked). Once invoked, the extension's behavior with respect to Communication Notifications does not seem to affect the outcome — the drift reproduces even when the NSE only modifies title/body/sound and returns. Questions Is there a known watchOS behavior where notifications processed by a UNNotificationServiceExtension use a different timestamp source on Apple Watch Notification Center after the Watch screen has been turned off and reopened, while the initial Watch banner and iPhone Notification Center show the correct delivery time? Are there specific UNMutableNotificationContent properties or APNs payload flags that should be preserved (or avoided) when returning content from an NSE to keep the Watch NC timestamp consistent with the delivery time? For E2EE messaging apps, is there a recommended pattern to decrypt and return content from an NSE that avoids this drift on watchOS? Happy to provide an anonymized snippet of NotificationService.swift and the APNs payload format if useful. Thanks.
0
0
2
13m
Notarization rejected with statusCode 7000 for months — “Team is not yet configured for notarization”
Hello, My macOS notarization has been blocked since March with: "status": "Rejected", "statusCode": 7000, "statusSummary": "Team is not yet configured for notarization", "issues": null Latest fresh probe: Submission ID: 3201b921-2313-45fd-b274-0e46d3fb03c2 Upload time: 2026-05-09T12:37:16Z Archive: KwantflowNotaryProbe-20260509T123714Z.zip Status: Rejected Error: -2052 / 7000 Issues: None Support cases: 102842156916 — Development and Technical → Other Development or Technical Questions 102882811151 — Development and Technical → Code Signing The archive uploads successfully and notarytool history/log work, but every submission is rejected before binary validation. The log shows no signing, entitlement, hardened runtime, timestamp, or executable issues. Apple forum answers say this is a Developer Program Support issue, not DTS/code-level. I have already contacted Developer Support, but the issue is still unresolved and blocks our macOS release. Has anyone recently resolved -2052 / 7000 / “Team is not yet configured for notarization”? Did Apple need to manually enable something on the team/account? Thank you.
0
0
2
13m
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
0
0
2
13m
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
0
0
3
14m
Core Data Multiple NSEntityDescriptions claim the NSManagedObject subclass
Hello everyone, I'm trying to adopt the new Staged Migrations for Core Data and I keep running into an error that I haven't been able to resolve. The error messages are as follows: warning: Multiple NSEntityDescriptions claim the NSManagedObject subclass 'Movie' so +entity is unable to disambiguate. warning: 'Movie' (0x60000350d6b0) from NSManagedObjectModel (0x60000213a8a0) claims 'Movie'. error: +[Movie entity] Failed to find a unique match for an NSEntityDescription to a managed object subclass This happens for all of my entities when they are added/fetched. Movie is an abstract entity subclass, and it has the error error: +[Movie entity] Failed to find which is unique to the subclass entities, but this occurs for all entities. The NSPersistentContainer is loaded only once, and I set the following option after it's loaded: storeDescription.setOption( [stages], forKey: NSPersistentStoreStagedMigrationManagerOptionKey ) The warnings and errors only appear after I fetch or save to context. It happens regardless of whether the database was migrated or not. In my test project, using the generic NSManagedObject with NSEntityDescription.insertNewObject(forEntityName: "MyEntity", into: context) does not cause the issue. However, using the generic NSManagedObject is not a viable option for my app. Setting the module to "Current Project Module" doesn't change anything, except that it now prints "claims 'MyModule.Show'" in the warnings. I have verified that there are no other entities with the same name or renameIdentifier. Has anyone else encountered this issue, or can offer any suggestions on how to resolve it? Thanks in advance for any help!
5
0
220
14m
Charts performance issue
Hi, I want to recreate a chart from Apple Health and I have code like this. When I scroll - especially the week and month charts, there are performance issues. If I remove .chartScrollPosition(x: $scrollChartPosition), it runs smoothly, but I need to know which part of the chart is currently displayed. Can you help me? import Charts import SwiftUI struct MacroChartView: View { var selectedRange: ChartRange var binnedPoints: [MacroBinPoint] @State private var scrollChartPosition: Date = .now var body: some View { VStack { Text("\(selectedRange.rangeLabel(for: scrollChartPosition))") Chart(binnedPoints) { point in BarMark( x: .value("Date", point.date, unit: selectedRange.binComponent), y: .value("Calories", point.calories) ) } .frame(height: 324) .chartXVisibleDomain(length: selectedRange.visibleDomainLength()) .chartScrollableAxes(.horizontal) .chartScrollPosition(x: $scrollChartPosition) .chartScrollTargetBehavior(.valueAligned(matching: selectedRange.scrollAlignmentComponents)) .chartXAxis { switch selectedRange { case .week: AxisMarks(values: .stride(by: .day)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.weekday(.abbreviated)) } case .month: AxisMarks(values: .stride(by: .weekOfYear)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.day()) } case .halfYear: AxisMarks(values: .stride(by: .month)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.month(.abbreviated)) } case .year: AxisMarks(values: .stride(by: .month)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.month(.abbreviated)) } } } } } } enum MeasurementHistoryMode { case macros case comparisons } enum MacroKindToDisplay { case protein, fat, carbs } enum MacrosDisplayMode: Equatable { case all case single(MacroKindToDisplay) } enum ChartRange: String, CaseIterable { case week = "T" case month = "M" case halfYear = "6M" case year = "R" var binComponent: Calendar.Component { switch self { case .week, .month: return .day case .halfYear: return .weekOfYear case .year: return .month } } var scrollAlignmentComponents: DateComponents { switch self { case .week: return DateComponents(hour: 0, minute: 0, second: 0) case .month: return DateComponents(hour: 0) case .halfYear: return DateComponents(weekday: 1) case .year: return DateComponents(day: 1) } } func visibleDomainLength() -> Int { switch self { case .week: return 7 * 24 * 60 * 60 case .month: return 31 * 24 * 60 * 60 case .halfYear: return 6 * 31 * 24 * 60 * 60 case .year: return 12 * 31 * 24 * 60 * 60 } } func start(for date: Date) -> Date { let cal = Calendar.current switch self { case .week, .month: return cal.startOfDay(for: date) case .halfYear: return cal.dateInterval(of: .weekOfYear, for: date)?.start ?? cal.startOfDay(for: date) case .year: return cal.dateInterval(of: .month, for: date)?.start ?? cal.startOfDay(for: date) } } func rangeLabel(for start: Date) -> String { let end = start.addingTimeInterval(TimeInterval(visibleDomainLength())) let f = DateFormatter() f.dateFormat = Calendar.current.isDate(start, inSameDayAs: end) ? "MMM d" : "MMM d" return Calendar.current.isDate(start, inSameDayAs: end) ? f.string(from: start) : "\(f.string(from: start)) – \(f.string(from: end))" } } struct MacrosPoint: Identifiable { var id: Date { date } let date: Date let calories: Double let proteinInGrams: Double let carbsInGrams: Double let fatInGrams: Double } struct MacroBinPoint: Identifiable { var id: Date { date } let date: Date let calories: Double let proteinKcal: Double let carbsKcal: Double let fatKcal: Double } func bin(points: [MacrosPoint], for period: ChartRange) -> [MacroBinPoint] { let grouped = Dictionary(grouping: points) { point in period.start(for: point.date) } let bins = grouped.map { (start, items) -> MacroBinPoint in var calories = items.reduce(0) { $0 + $1.calories } var proteinKcal = items.reduce(0) { $0 + $1.proteinInGrams * 4 } var carbsKcal = items.reduce(0) { $0 + $1.carbsInGrams * 4 } var fatKcal = items.reduce(0) { $0 + $1.fatInGrams * 9 } calories /= Double(items.count) proteinKcal /= Double(items.count) carbsKcal /= Double(items.count) fatKcal /= Double(items.count) return MacroBinPoint(date: start, calories: calories, proteinKcal: proteinKcal, carbsKcal: carbsKcal, fatKcal: fatKcal) } .sorted { $0.date < $1.date } return bins } struct ExampleData { static let macrosPoints: [MacrosPoint] = [ MacrosPoint(date: Date(timeIntervalSince1970: 1687949774), calories: 1895, proteinInGrams: 115, carbsInGrams: 192, fatInGrams: 72),... ]
2
1
265
15m
App rejected under Guideline 5.1.1(ix) - Organization account required for restaurant driver app
Hello everyone, My iOS app was rejected by App Review under: Guideline 5.1.1(ix) - Legal - Privacy - Data Collection and Storage The review message says that the app must be submitted through an Apple Developer Program account enrolled as an Organization, not as an Individual. The app is a private restaurant delivery driver app in Saudi Arabia. It is used only by approved restaurant delivery drivers to view and manage assigned food delivery orders. The app uses location only for normal restaurant food delivery workflow. It is not related to healthcare, finance, insurance, legal, government, cryptocurrency, education, or any other regulated service. The restaurant company has valid Commercial Registration and National Address documents in Saudi Arabia. I am an employee / authorized technical representative of the company, and I manage the app submission and technical deployment for them. My questions: Is an Organization Apple Developer account strictly required for this type of restaurant delivery driver app? Can this be resolved by replying to App Review with company authorization and business documents? Or is converting/updating the Apple Developer membership from Individual to Organization the only practical solution? If I am not the founder/co-founder but I am an employee/authorized representative of the company, can the current Individual membership be updated to Organization, or should the company owner create a new Organization membership? Any guidance from developers who faced a similar 5.1.1(ix) rejection would be appreciated. Thank you.
0
0
2
15m
Legitimate app migration from personal to business account keeps getting rejected under Guideline 4.3(a)
Hello everyone, I’m looking for advice from developers who successfully resolved a Guideline 4.3(a) “Spam” rejection in a legitimate account migration scenario. Situation: I originally developed and submitted my app under my personal Apple Developer account. Later, after creating a business/company, I opened a business Apple Developer account because I wanted the app published under the company instead. The original app on the personal account was removed before submitting on the business account. I changed the Bundle ID and created a new app entry under the business account. However, the business-account submission was rejected under: “Guideline 4.3(a) - Design - Spam” with the message about “similar binary, metadata, and/or concept.” I appealed and explained that this is the same legitimate app/business transitioning from an individual account to a company account, not a spam network or template cloning situation. The appeal was denied. What makes this more confusing is that the app on the original personal account also later received a 4.3 rejection. My questions: Has anyone successfully resolved a similar “personal account → business account” migration issue? Did App Transfer end up being the only workable solution? If both accounts are already flagged with 4.3, what actually helped: major redesign, new features, metadata/screenshots changes, backend/content changes, or something else? Did anyone manage to get meaningful clarification from App Review? Is there any realistic path forward besides rebuilding/repositioning the app? The app is a trading journal / analytics type app, so I understand it may also fall into a saturated category. Any real experiences or advice would be greatly appreciated because the rejection messages are very generic and it’s difficult to understand what Apple specifically expects. Thank you.
0
0
1
16m
Xcode won't sign into ChatGPT Codex account anymore
As of May 8th, 2026, after I upgraded to "codex-cli 0.129.0" via Xcode, I can no longer sign into my ChatGPT account in Xcode Intelligence Settings. The Log In window is always successful, but the settings never update to show the login being successful. It's a constant loop. Perhaps a hand-shake fail. Versions: Tahoe 26.3.1, Xcode 26.4.1, codex-cli 0.129.0.
5
0
164
41m
Radiometric interpretation of Apple ProRAW and Bayer RAW access via AVFoundation
I am working on a computational photography research project involving multi-exposure HDR reconstruction using Bayer RAW and Apple ProRAW captures. I would like to clarify the radiometric interpretation of Apple ProRAW and the availability of Bayer RAW capture through AVFoundation. My questions are: 1.On current iPhone Pro devices, is it possible for third-party apps to capture and export true Bayer-pattern RAW DNG files through AVFoundation, rather than Apple ProRAW linear DNG files? If so, which availableRawPhotoPixelFormatTypes correspond to Bayer RAW, and what device or format restrictions apply? 2.Apple ProRAW appears to be demosaiced and computationally processed, and may include multi-frame fusion. Is the decoded ProRAW image intended to be radiometrically linear and scene-referred? 3.For a bracketed ProRAW sequence captured with fixed ISO, white balance, lens, and focus, but different exposure times, can one assume that the decoded linear pixel values Y_i(p) satisfy an exposure-proportional model in non-saturated regions, such as Y_i(p) ≈ t_i R(p), across brackets? This question is about radiometric consistency for algorithmic use, not about visual editing or tone mapping. Thank you for your help.
0
0
2
42m
CloudKit Query (and Dashboard) returns only a few records
When I query, an existing database with over 10,000 records from an Objective C app (i.e. CKQueryOperation) I get only N x 100 records returned where N varies each time between 0 and about 10 (i.e. never more than 1000 records and always an even multiple of 100). When I do a “Query Records” on the CloudKit Dashboard I get a similar number of pages of records downloaded (i.e. 0-10). If I tap “Query Records” multiple times I will get more pages of records until the full 10,000 are downloaded. This had been working fine until recently, both from the app and the Dashboard. There are multiple Record Types in the database. Only one Record Type is erroring. The other Record Types continue to work both from the app and the Dashboard. In particular, the Users Record Type has many many records and they all download to many pages with a single tap of “Query Records”. I have posted this to the Feedback Assistant under FB22358865. Here is my code: NSPredicate *predicate =[NSPredicate predicateWithFormat:@"modificationDate>%@",dateLastSynched]; CKRecordType theRecordName=[NSString stringWithString:@"Notices”]; // I also try this for @“Links” and @“Messages” and @“EventMessages" CKQuery *query = [[CKQuery alloc] initWithRecordType:theRecordName predicate:predicate]; CKQueryOperation *theOperation=[[CKQueryOperation alloc] initWithQuery:query]; [self startAQueryOperation:(CKQueryOperation *)theOperation theName:(NSString *)recordName]; -(void)startAQueryOperation:(CKQueryOperation *)theOperation theName:(NSString *)recordName{ theOperation.recordFetchedBlock=^(CKRecord *theRecord){ NSLog(@"XXXjust downloaded a %@",recordName); }; theOperation.queryCompletionBlock=^(CKQueryCursor *theCursor, NSError *error){ if(error){ NSLog(@"XXXerror %@",error); } if(theCursor){ CKQueryOperation *anotherOperation=[[CKQueryOperation alloc] initWithCursor:theCursor]; [self startAQueryOperation:anotherOperation theName:recordName]; } }; CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase]; [publicDatabase addOperation:theOperation]; } When I run this code in the app I get no “XXXerror” from the NSLogs. I get the expected number of “XXXjust downloaded a” EventMessages (435) and Messages (594) and Links (15) but I get varying amounts, 100 or 400 or 500 “xxjust downloaded a” for the Notices when I should get 10,118 records. Thinking that 10,000 records is too much, if I alter “dateLastSynched” for Notices I still get only 100 or 200, not the expected number. Note that the number is always a multiple of 100. This seems to be consistent with the typical number of records I get on the CloudKit dashboard each time I tap “Query Records”.
3
0
189
47m
Radiometric interpretation of Apple ProRAW and Bayer RAW access via AVFoundation
I am working on a computational photography research project involving multi-exposure HDR reconstruction using Bayer RAW and Apple ProRAW captures. I would like to clarify the radiometric interpretation of Apple ProRAW and the availability of Bayer RAW capture through AVFoundation. My questions are: On current iPhone Pro devices, is it possible for third-party apps to capture and export true Bayer-pattern RAW DNG files through AVFoundation, rather than Apple ProRAW linear DNG files? If so, which availableRawPhotoPixelFormatTypes correspond to Bayer RAW, and what device or format restrictions apply? Apple ProRAW appears to be demosaiced and computationally processed, and may include multi-frame fusion. Is the decoded ProRAW image intended to be radiometrically linear and scene-referred? For a bracketed ProRAW sequence captured with fixed ISO, white balance, lens, and focus, but different exposure times, can one assume that the decoded linear pixel values Y_i(p) satisfy an exposure-proportional model in non-saturated regions, such as Y_i(p) ≈ t_i R(p), across brackets? This question is about radiometric consistency for algorithmic use, not about visual editing or tone mapping. Thank you for your help.
0
0
3
56m
Detect Configuration Profile state change (DoH .mobileconfig) without VPN/MDM/supervised — any API I missed?
Is there any iOS API, framework, or entitlement (public or beta) that lets an app detect when a user disables or removes a Configuration Profile (specifically a DNS-over-HTTPS profile) — without VPN extension, MDM, or supervised mode? Use case: I need to know server-side, in real time, when the user toggles off a .mobileconfig DoH profile they previously installed. Things I've already reviewed and ruled out: NetworkExtension (NEDNSSettingsManager — only fires while app is running) BGTaskScheduler (iOS-scheduled, not real-time) NEFilterDataProvider (requires supervised) VPN / MDM / supervised Anything I'm missing?
Replies
0
Boosts
0
Views
1
Activity
8m
BLE LE Privacy Issue with iPad A16 (11th Gen?) – Peripheral Not Responding After MTU Exchange
Hi all, I'm encountering a BLE issue with the newer iPad models featuring the A16 Bionic chip (e.g., iPad 11th Gen). I have an iOS application that runs as a BLE peripheral, and it used to work flawlessly with various central devices. 📱 Device Specs Model: iPad (A16 Bionic) OS: iPadOS 18.6 ✅ Working Setup (Before): iOS app acts as a BLE peripheral (advertises a custom service). Central device (Windows/Linux/Android) could: Discover advertisements Connect to the peripheral Exchange MTU Discover GATT services Communicate bidirectionally ❌ Issue with iPad A16 (Newer Devices): Central device receives advertisements and connects. MTU exchange request is sent by central, but iPad A16 does not respond. The BLE link remains active but only transmits empty PDUs, and communication never proceeds. Same issue observed with third-party apps like BLE HID keyboard — they also fail to connect or communicate on A16 iPads but work on older devices (e.g., iPad 10th Gen and below). 🔍 Debugging So Far: Confirmed that MTU Exchange Request is compliant (Client Rx MTU = 527). Works fine with iPad 10th Gen and earlier. Works with Android, Windows, and even Linux central stacks with older iPads. A16-based iPads seem to silently drop or ignore the MTU request. 🧪 Suspected Cause: Possible regression or behavioral change in LE Privacy handling on newer iPads. Possibly tied to iPadOS version or Bluetooth controller firmware. 🙏 Looking for: Anyone else facing similar BLE issues on iPads with A16? Any known changes to BLE LE Privacy, MTU negotiation, or connection behavior in iPadOS on A16 devices? Any workarounds, entitlements, or configuration changes that fixed the issue? Would appreciate any insights or suggestions. Thank you!
Replies
4
Boosts
1
Views
138
Activity
9m
App Review times
Vox Dictum (macOS) submitted for review on May 4, still showing 'Waiting for Review' after 5 days. Support case 20000112075878 raised on May 8 with no response yet. First submission, includes auto-renewable subscriptions. Is this timeline normal for a first macOS app with subscriptions? Thank you, M
Replies
0
Boosts
0
Views
9
Activity
11m
Production StoreKit silently omits one approved auto-renewable subscription product — sandbox returns it correctly, sudden onset 2026-05-09
Hi all, Reporting an active production issue in case anyone else is seeing the same pattern, or has insight into what could cause this. Symptom As of 2026-05-09 morning, one specific auto-renewable subscription product is silently absent from Production StoreKit responses on our live App Store build. The product is still 'Approved' in App Store Connect, all metadata is intact, no error code is returned — the product simply does not appear in the products array. The other 3 products in the same subscription group continue to work normally. 100% of production users are affected. Setup App: live on App Store, version 1.0.0 (build 8) Subscription group with 4 auto-renewable products: standard_monthly_799 ✅ returns correctly standard_annual_6999 ✅ returns correctly unlimited_monthly_1299 ❌ MISSING from production response unlimited_annual_9999 ✅ returns correctly SDK: purchases_flutter (RevenueCat) → StoreKit Same physical device, same code, same RC config behaves correctly in Sandbox — all 4 products are returned and a sandbox purchase of unlimited_monthly_1299 succeeds. Timeline 2026-05-08: working correctly, purchases succeeding normally 2026-05-09 morning: product silently disappears from production StoreKit responses No app update was submitted between those dates No App Store Connect changes were made Onset was simultaneous across all production users at one timestamp What I've verified App Store Connect: Product status: Approved All territories enabled, all prices configured (no N/A in any territory) Subscription group correctly contains all 4 products No 'Submit for Review' pending changes Product attached to live app version 1.0.0 (8) Tax category: Match to parent app Family Sharing: Off (consistent with the working products) Paid Applications Agreement: Status: Active Banking and Tax forms: Active RevenueCat dashboard: All 4 products show Store Status: Approved Default offering contains all 4 packages iOS attachment for the affected product is intact No warnings or sync errors Sandbox StoreKit (today): flutter run (debug) on physical device → all 4 products returned flutter run --release on physical device → all 4 products returned Sandbox purchase of unlimited_monthly_1299 succeeds Production StoreKit (today, broken): App Store-downloaded 1.0.0 (8) on multiple users' devices Multiple Apple IDs / multiple devices / multiple regions — all reproduce Only unlimited_monthly_1299 affected; other 3 products fine Why this looks server-side Sudden simultaneous onset across all users No code or config change preceded onset Sandbox unaffected, only Production affected Single product affected, not the whole subscription group or app No error returned — silent omission only Cannot reproduce with locally signed builds, only with App Store-distributed binary This pattern is consistent with a server-side product indexing or fronting issue specific to one product in Production StoreKit. As a developer I don't have visibility into Apple's product-serving infrastructure to investigate further — looking for guidance from anyone who has seen this before. Questions for the community Has anyone else seen a single auto-renewable subscription silently drop out of Production StoreKit responses while remaining Approved in ASC, with no error code returned? Is there any internal product-state flag (beyond what's exposed in the ASC UI) that could cause Production StoreKit to silently omit a product? Anything similar to a hidden 'review hold' or 'price tier reconciliation' state? Has the asymmetry between RevenueCat package identifiers (Standard uses RC's $rc_monthly/$rc_annual default identifiers, Premium uses custom premium_monthly/premium_annual identifiers) ever been implicated in this kind of failure? RC support has been notified, but worth asking publicly. For anyone who has resolved a similar issue: what action ended up clearing it — ASC re-save, RC re-sync, Apple Support escalation, or did it self-resolve after Apple-side cache propagation? Filings in progress ASC Contact Us ticket: filed Apple DTS technical incident: filed RevenueCat support ticket: filed Feedback Assistant report: in progress Will update this thread with the resolution path once we have one. Thanks, — Kin Pong Lo (developer, Alice: AI English Tutor)
Replies
0
Boosts
0
Views
1
Activity
11m
Family Controls entitlement: no response for over 2 weeks
Hi, I submitted my Family Controls entitlement requests on April 21 for my iOS app, but I still haven’t received an approval, rejection, or any status update. This is blocking my ability to properly test and move forward with the app, since it depends on the Screen Time / Family Controls APIs. Has anyone had a similar delay recently? Is the recommended next step to file a code-level support request with my Team ID, or should I continue waiting? Thanks.
Replies
2
Boosts
0
Views
76
Activity
12m
Developer program renewal blocked: "This item is currently not available in your country or region" — phone escalations not returned for 3 weeks
Posting here in hope of getting this in front of someone at Apple who can actually look at our account, since three weeks of phone support has produced no follow-up. Setup: Organizational Apple Developer Program membership, active through 2024 Did not renew in 2024 (no apps shipping that year) Same country/region as every prior successful renewal; nothing has changed on our side Have a completed app ready to ship right now Error: During renewal, the payment page returns: "This item is currently not available in your country/region." Reproduced consistently across browsers, networks, and payment methods. What I've tried: Renewing via the existing org account → same error every attempt. Enrolling a new org Developer account → enrollment is auto-cancelled with the message that our organization already has a membership and we must use the existing one. Phoned Apple Developer Program Support 10+ times over the past three weeks. Every call ends with the agent stating the issue requires senior advisor escalation and that I will be contacted by email. No email has ever arrived. What I need: A path to a senior Developer Program Support advisor who can actually look at our case. Happy to share Team ID and Apple ID through any official channel. If anyone from Apple sees this - our case has been open via phone support for three weeks with zero follow-up. Any pointer would be hugely appreciated.
Replies
3
Boosts
0
Views
95
Activity
12m
AppStore Connect Website is so laggy
I want to register a Sandbox account, that it. Please Apple fix this.
Replies
0
Boosts
0
Views
1
Activity
13m
Apple Watch Notification Center timestamp drift on notifications processed by a Notification Service Extension
I'm seeing a timestamp display issue on Apple Watch Notification Center, and I'd like to confirm whether this is a known watchOS behavior or whether there's a setup mistake on our side. Symptom The same APNs notification displays the correct time on iPhone Notification Center and on the initial Apple Watch banner. After the Watch screen turns off and the user later opens Notification Center on Apple Watch, the same notification may show an incorrect relative timestamp such as "3 hours ago" or even "yesterday". The drift is per-notification and persists for that notification until it's dismissed. iPhone NC always shows the correct time. WhatsApp tested side-by-side on the same iPhone/Watch pair does not show this drift. Setup iOS 26.4.2 on iPhone 16 Pro watchOS 26.4 on Apple Watch Series 10 App with paired Apple Watch A UNNotificationServiceExtension that decrypts E2EE message previews and applies Communication Notification enrichment via INSendMessageIntent and content.updating(from:) Production APNs environment, TestFlight builds No beta software Isolation tests already performed Test mutable-content NSE invoked Drift on Watch NC Minimal APNs (alert + sound only) no no no drift NSE skips content.updating(from:), INInteraction.donate/delete (still calls them as no-op via diagnostic build) yes yes — modifies content drift NSE bypasses ALL Intents/Communication Notification APIs (no INPerson, no INSendMessageIntent, no avatar, no updating(from:)); just modifies title/body/sound/category and returns the mutable copy yes yes — modifies content drift Production-like APNs payload (thread-id, target-content-id, category, sound, badge, custom userInfo) but WITHOUT mutable-content no no no drift Eliminated as causes: content.updating(from:), INSendMessageIntent, INInteraction.donate, INInteraction.delete(with:), INPerson/INPersonHandle (not even constructed in test 3), avatar fetching, thread-id, target-content-id, category, sound, badge, custom userInfo, custom createdAt timestamp, stale Siri/Apple Intelligence history (cleared manually on iPhone and Watch). The pattern The only consistent variable distinguishing the no-drift cases from the drift cases is whether mutable-content: 1 is set on the APNs payload (i.e. whether the UNNotificationServiceExtension is invoked). Once invoked, the extension's behavior with respect to Communication Notifications does not seem to affect the outcome — the drift reproduces even when the NSE only modifies title/body/sound and returns. Questions Is there a known watchOS behavior where notifications processed by a UNNotificationServiceExtension use a different timestamp source on Apple Watch Notification Center after the Watch screen has been turned off and reopened, while the initial Watch banner and iPhone Notification Center show the correct delivery time? Are there specific UNMutableNotificationContent properties or APNs payload flags that should be preserved (or avoided) when returning content from an NSE to keep the Watch NC timestamp consistent with the delivery time? For E2EE messaging apps, is there a recommended pattern to decrypt and return content from an NSE that avoids this drift on watchOS? Happy to provide an anonymized snippet of NotificationService.swift and the APNs payload format if useful. Thanks.
Replies
0
Boosts
0
Views
2
Activity
13m
Notarization rejected with statusCode 7000 for months — “Team is not yet configured for notarization”
Hello, My macOS notarization has been blocked since March with: "status": "Rejected", "statusCode": 7000, "statusSummary": "Team is not yet configured for notarization", "issues": null Latest fresh probe: Submission ID: 3201b921-2313-45fd-b274-0e46d3fb03c2 Upload time: 2026-05-09T12:37:16Z Archive: KwantflowNotaryProbe-20260509T123714Z.zip Status: Rejected Error: -2052 / 7000 Issues: None Support cases: 102842156916 — Development and Technical → Other Development or Technical Questions 102882811151 — Development and Technical → Code Signing The archive uploads successfully and notarytool history/log work, but every submission is rejected before binary validation. The log shows no signing, entitlement, hardened runtime, timestamp, or executable issues. Apple forum answers say this is a Developer Program Support issue, not DTS/code-level. I have already contacted Developer Support, but the issue is still unresolved and blocks our macOS release. Has anyone recently resolved -2052 / 7000 / “Team is not yet configured for notarization”? Did Apple need to manually enable something on the team/account? Thank you.
Replies
0
Boosts
0
Views
2
Activity
13m
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
Replies
0
Boosts
0
Views
2
Activity
13m
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
Replies
0
Boosts
0
Views
3
Activity
14m
Core Data Multiple NSEntityDescriptions claim the NSManagedObject subclass
Hello everyone, I'm trying to adopt the new Staged Migrations for Core Data and I keep running into an error that I haven't been able to resolve. The error messages are as follows: warning: Multiple NSEntityDescriptions claim the NSManagedObject subclass 'Movie' so +entity is unable to disambiguate. warning: 'Movie' (0x60000350d6b0) from NSManagedObjectModel (0x60000213a8a0) claims 'Movie'. error: +[Movie entity] Failed to find a unique match for an NSEntityDescription to a managed object subclass This happens for all of my entities when they are added/fetched. Movie is an abstract entity subclass, and it has the error error: +[Movie entity] Failed to find which is unique to the subclass entities, but this occurs for all entities. The NSPersistentContainer is loaded only once, and I set the following option after it's loaded: storeDescription.setOption( [stages], forKey: NSPersistentStoreStagedMigrationManagerOptionKey ) The warnings and errors only appear after I fetch or save to context. It happens regardless of whether the database was migrated or not. In my test project, using the generic NSManagedObject with NSEntityDescription.insertNewObject(forEntityName: "MyEntity", into: context) does not cause the issue. However, using the generic NSManagedObject is not a viable option for my app. Setting the module to "Current Project Module" doesn't change anything, except that it now prints "claims 'MyModule.Show'" in the warnings. I have verified that there are no other entities with the same name or renameIdentifier. Has anyone else encountered this issue, or can offer any suggestions on how to resolve it? Thanks in advance for any help!
Replies
5
Boosts
0
Views
220
Activity
14m
Charts performance issue
Hi, I want to recreate a chart from Apple Health and I have code like this. When I scroll - especially the week and month charts, there are performance issues. If I remove .chartScrollPosition(x: $scrollChartPosition), it runs smoothly, but I need to know which part of the chart is currently displayed. Can you help me? import Charts import SwiftUI struct MacroChartView: View { var selectedRange: ChartRange var binnedPoints: [MacroBinPoint] @State private var scrollChartPosition: Date = .now var body: some View { VStack { Text("\(selectedRange.rangeLabel(for: scrollChartPosition))") Chart(binnedPoints) { point in BarMark( x: .value("Date", point.date, unit: selectedRange.binComponent), y: .value("Calories", point.calories) ) } .frame(height: 324) .chartXVisibleDomain(length: selectedRange.visibleDomainLength()) .chartScrollableAxes(.horizontal) .chartScrollPosition(x: $scrollChartPosition) .chartScrollTargetBehavior(.valueAligned(matching: selectedRange.scrollAlignmentComponents)) .chartXAxis { switch selectedRange { case .week: AxisMarks(values: .stride(by: .day)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.weekday(.abbreviated)) } case .month: AxisMarks(values: .stride(by: .weekOfYear)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.day()) } case .halfYear: AxisMarks(values: .stride(by: .month)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.month(.abbreviated)) } case .year: AxisMarks(values: .stride(by: .month)) { date in AxisGridLine() AxisTick() AxisValueLabel(format: .dateTime.month(.abbreviated)) } } } } } } enum MeasurementHistoryMode { case macros case comparisons } enum MacroKindToDisplay { case protein, fat, carbs } enum MacrosDisplayMode: Equatable { case all case single(MacroKindToDisplay) } enum ChartRange: String, CaseIterable { case week = "T" case month = "M" case halfYear = "6M" case year = "R" var binComponent: Calendar.Component { switch self { case .week, .month: return .day case .halfYear: return .weekOfYear case .year: return .month } } var scrollAlignmentComponents: DateComponents { switch self { case .week: return DateComponents(hour: 0, minute: 0, second: 0) case .month: return DateComponents(hour: 0) case .halfYear: return DateComponents(weekday: 1) case .year: return DateComponents(day: 1) } } func visibleDomainLength() -> Int { switch self { case .week: return 7 * 24 * 60 * 60 case .month: return 31 * 24 * 60 * 60 case .halfYear: return 6 * 31 * 24 * 60 * 60 case .year: return 12 * 31 * 24 * 60 * 60 } } func start(for date: Date) -> Date { let cal = Calendar.current switch self { case .week, .month: return cal.startOfDay(for: date) case .halfYear: return cal.dateInterval(of: .weekOfYear, for: date)?.start ?? cal.startOfDay(for: date) case .year: return cal.dateInterval(of: .month, for: date)?.start ?? cal.startOfDay(for: date) } } func rangeLabel(for start: Date) -> String { let end = start.addingTimeInterval(TimeInterval(visibleDomainLength())) let f = DateFormatter() f.dateFormat = Calendar.current.isDate(start, inSameDayAs: end) ? "MMM d" : "MMM d" return Calendar.current.isDate(start, inSameDayAs: end) ? f.string(from: start) : "\(f.string(from: start)) – \(f.string(from: end))" } } struct MacrosPoint: Identifiable { var id: Date { date } let date: Date let calories: Double let proteinInGrams: Double let carbsInGrams: Double let fatInGrams: Double } struct MacroBinPoint: Identifiable { var id: Date { date } let date: Date let calories: Double let proteinKcal: Double let carbsKcal: Double let fatKcal: Double } func bin(points: [MacrosPoint], for period: ChartRange) -> [MacroBinPoint] { let grouped = Dictionary(grouping: points) { point in period.start(for: point.date) } let bins = grouped.map { (start, items) -> MacroBinPoint in var calories = items.reduce(0) { $0 + $1.calories } var proteinKcal = items.reduce(0) { $0 + $1.proteinInGrams * 4 } var carbsKcal = items.reduce(0) { $0 + $1.carbsInGrams * 4 } var fatKcal = items.reduce(0) { $0 + $1.fatInGrams * 9 } calories /= Double(items.count) proteinKcal /= Double(items.count) carbsKcal /= Double(items.count) fatKcal /= Double(items.count) return MacroBinPoint(date: start, calories: calories, proteinKcal: proteinKcal, carbsKcal: carbsKcal, fatKcal: fatKcal) } .sorted { $0.date < $1.date } return bins } struct ExampleData { static let macrosPoints: [MacrosPoint] = [ MacrosPoint(date: Date(timeIntervalSince1970: 1687949774), calories: 1895, proteinInGrams: 115, carbsInGrams: 192, fatInGrams: 72),... ]
Replies
2
Boosts
1
Views
265
Activity
15m
App rejected under Guideline 5.1.1(ix) - Organization account required for restaurant driver app
Hello everyone, My iOS app was rejected by App Review under: Guideline 5.1.1(ix) - Legal - Privacy - Data Collection and Storage The review message says that the app must be submitted through an Apple Developer Program account enrolled as an Organization, not as an Individual. The app is a private restaurant delivery driver app in Saudi Arabia. It is used only by approved restaurant delivery drivers to view and manage assigned food delivery orders. The app uses location only for normal restaurant food delivery workflow. It is not related to healthcare, finance, insurance, legal, government, cryptocurrency, education, or any other regulated service. The restaurant company has valid Commercial Registration and National Address documents in Saudi Arabia. I am an employee / authorized technical representative of the company, and I manage the app submission and technical deployment for them. My questions: Is an Organization Apple Developer account strictly required for this type of restaurant delivery driver app? Can this be resolved by replying to App Review with company authorization and business documents? Or is converting/updating the Apple Developer membership from Individual to Organization the only practical solution? If I am not the founder/co-founder but I am an employee/authorized representative of the company, can the current Individual membership be updated to Organization, or should the company owner create a new Organization membership? Any guidance from developers who faced a similar 5.1.1(ix) rejection would be appreciated. Thank you.
Replies
0
Boosts
0
Views
2
Activity
15m
Legitimate app migration from personal to business account keeps getting rejected under Guideline 4.3(a)
Hello everyone, I’m looking for advice from developers who successfully resolved a Guideline 4.3(a) “Spam” rejection in a legitimate account migration scenario. Situation: I originally developed and submitted my app under my personal Apple Developer account. Later, after creating a business/company, I opened a business Apple Developer account because I wanted the app published under the company instead. The original app on the personal account was removed before submitting on the business account. I changed the Bundle ID and created a new app entry under the business account. However, the business-account submission was rejected under: “Guideline 4.3(a) - Design - Spam” with the message about “similar binary, metadata, and/or concept.” I appealed and explained that this is the same legitimate app/business transitioning from an individual account to a company account, not a spam network or template cloning situation. The appeal was denied. What makes this more confusing is that the app on the original personal account also later received a 4.3 rejection. My questions: Has anyone successfully resolved a similar “personal account → business account” migration issue? Did App Transfer end up being the only workable solution? If both accounts are already flagged with 4.3, what actually helped: major redesign, new features, metadata/screenshots changes, backend/content changes, or something else? Did anyone manage to get meaningful clarification from App Review? Is there any realistic path forward besides rebuilding/repositioning the app? The app is a trading journal / analytics type app, so I understand it may also fall into a saturated category. Any real experiences or advice would be greatly appreciated because the rejection messages are very generic and it’s difficult to understand what Apple specifically expects. Thank you.
Replies
0
Boosts
0
Views
1
Activity
16m
Xcode won't sign into ChatGPT Codex account anymore
As of May 8th, 2026, after I upgraded to "codex-cli 0.129.0" via Xcode, I can no longer sign into my ChatGPT account in Xcode Intelligence Settings. The Log In window is always successful, but the settings never update to show the login being successful. It's a constant loop. Perhaps a hand-shake fail. Versions: Tahoe 26.3.1, Xcode 26.4.1, codex-cli 0.129.0.
Replies
5
Boosts
0
Views
164
Activity
41m
Radiometric interpretation of Apple ProRAW and Bayer RAW access via AVFoundation
I am working on a computational photography research project involving multi-exposure HDR reconstruction using Bayer RAW and Apple ProRAW captures. I would like to clarify the radiometric interpretation of Apple ProRAW and the availability of Bayer RAW capture through AVFoundation. My questions are: 1.On current iPhone Pro devices, is it possible for third-party apps to capture and export true Bayer-pattern RAW DNG files through AVFoundation, rather than Apple ProRAW linear DNG files? If so, which availableRawPhotoPixelFormatTypes correspond to Bayer RAW, and what device or format restrictions apply? 2.Apple ProRAW appears to be demosaiced and computationally processed, and may include multi-frame fusion. Is the decoded ProRAW image intended to be radiometrically linear and scene-referred? 3.For a bracketed ProRAW sequence captured with fixed ISO, white balance, lens, and focus, but different exposure times, can one assume that the decoded linear pixel values Y_i(p) satisfy an exposure-proportional model in non-saturated regions, such as Y_i(p) ≈ t_i R(p), across brackets? This question is about radiometric consistency for algorithmic use, not about visual editing or tone mapping. Thank you for your help.
Replies
0
Boosts
0
Views
2
Activity
42m
CloudKit Query (and Dashboard) returns only a few records
When I query, an existing database with over 10,000 records from an Objective C app (i.e. CKQueryOperation) I get only N x 100 records returned where N varies each time between 0 and about 10 (i.e. never more than 1000 records and always an even multiple of 100). When I do a “Query Records” on the CloudKit Dashboard I get a similar number of pages of records downloaded (i.e. 0-10). If I tap “Query Records” multiple times I will get more pages of records until the full 10,000 are downloaded. This had been working fine until recently, both from the app and the Dashboard. There are multiple Record Types in the database. Only one Record Type is erroring. The other Record Types continue to work both from the app and the Dashboard. In particular, the Users Record Type has many many records and they all download to many pages with a single tap of “Query Records”. I have posted this to the Feedback Assistant under FB22358865. Here is my code: NSPredicate *predicate =[NSPredicate predicateWithFormat:@"modificationDate>%@",dateLastSynched]; CKRecordType theRecordName=[NSString stringWithString:@"Notices”]; // I also try this for @“Links” and @“Messages” and @“EventMessages" CKQuery *query = [[CKQuery alloc] initWithRecordType:theRecordName predicate:predicate]; CKQueryOperation *theOperation=[[CKQueryOperation alloc] initWithQuery:query]; [self startAQueryOperation:(CKQueryOperation *)theOperation theName:(NSString *)recordName]; -(void)startAQueryOperation:(CKQueryOperation *)theOperation theName:(NSString *)recordName{ theOperation.recordFetchedBlock=^(CKRecord *theRecord){ NSLog(@"XXXjust downloaded a %@",recordName); }; theOperation.queryCompletionBlock=^(CKQueryCursor *theCursor, NSError *error){ if(error){ NSLog(@"XXXerror %@",error); } if(theCursor){ CKQueryOperation *anotherOperation=[[CKQueryOperation alloc] initWithCursor:theCursor]; [self startAQueryOperation:anotherOperation theName:recordName]; } }; CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase]; [publicDatabase addOperation:theOperation]; } When I run this code in the app I get no “XXXerror” from the NSLogs. I get the expected number of “XXXjust downloaded a” EventMessages (435) and Messages (594) and Links (15) but I get varying amounts, 100 or 400 or 500 “xxjust downloaded a” for the Notices when I should get 10,118 records. Thinking that 10,000 records is too much, if I alter “dateLastSynched” for Notices I still get only 100 or 200, not the expected number. Note that the number is always a multiple of 100. This seems to be consistent with the typical number of records I get on the CloudKit dashboard each time I tap “Query Records”.
Replies
3
Boosts
0
Views
189
Activity
47m
Radiometric interpretation of Apple ProRAW and Bayer RAW access via AVFoundation
I am working on a computational photography research project involving multi-exposure HDR reconstruction using Bayer RAW and Apple ProRAW captures. I would like to clarify the radiometric interpretation of Apple ProRAW and the availability of Bayer RAW capture through AVFoundation. My questions are: On current iPhone Pro devices, is it possible for third-party apps to capture and export true Bayer-pattern RAW DNG files through AVFoundation, rather than Apple ProRAW linear DNG files? If so, which availableRawPhotoPixelFormatTypes correspond to Bayer RAW, and what device or format restrictions apply? Apple ProRAW appears to be demosaiced and computationally processed, and may include multi-frame fusion. Is the decoded ProRAW image intended to be radiometrically linear and scene-referred? For a bracketed ProRAW sequence captured with fixed ISO, white balance, lens, and focus, but different exposure times, can one assume that the decoded linear pixel values Y_i(p) satisfy an exposure-proportional model in non-saturated regions, such as Y_i(p) ≈ t_i R(p), across brackets? This question is about radiometric consistency for algorithmic use, not about visual editing or tone mapping. Thank you for your help.
Replies
0
Boosts
0
Views
3
Activity
56m
Agents in Xcode: Codex Sign In not working
Hey all, the codex sign in isn't working for me in Agents. I am using the 26.5 release candidate version. It always says "Not Signed In". I have completed the Sign In process multiple times. Anyone else seeing this? I have filed Feedback FB22732574
Replies
4
Boosts
1
Views
98
Activity
57m