Search results for

“A Summary of the WWDC25 Group Lab”

10,645 results found

Post

Replies

Boosts

Views

Activity

Inquiry: iOS capability to read EMV credit/debit cards via NFC (Core NFC) and acceptable alternatives
Hello Apple Developer Technical Support Team, I’m working on an iOS banking/security SDK and we’re trying to match an Android feature that reads payment cards via NFC (EMV). On Android, this is implemented using an NFC scanning screen (e.g., “NfcScanActivity”) that can read EMV data from contactless credit/debit cards. Could you please clarify the current iOS capabilities and App Store policy around this? On iOS, is it currently possible for a third-party App Store app to read contactless credit/debit cards using Core NFC (i.e., accessing EMV application data/AIDs from payment cards)? If this is possible, what are the supported APIs/frameworks and any entitlement requirements (if applicable)? If this is not possible for App Store apps, could you recommend the closest acceptable alternatives for achieving a similar user outcome? For example: Using Apple Pay / PassKit flows for payment-related experiences Card scanning alternatives (camera-based OCR) for capturing card details (if allowed) Using an external cer
0
0
77
4w
Clarification on concurrency guarantees for shared data between App and Widget extensions
Hi, I’m looking for clarification on what concurrency and consistency guarantees Apple provides when multiple targets (main app + Widget extensions) access shared storage. Specifically: 1. UserDefaults (App Group / suiteName:) • If multiple processes (app + multiple widget instances) read and write the same shared UserDefaults, what guarantees are provided? • Is access serialized internally to prevent corruption? • Are read–modify–write operations safe across processes, or can lost updates occur? 2. Core Data (shared SQLite store in App Group container) • Is it officially supported for multiple processes to open and write to the same Core Data SQLite store? • Are there recommended configurations (e.g. WAL mode) for safe multi-process access? • Is Apple’s recommendation to have a single writer process? 3. FileManager (shared container files) • If two processes write to the same file in an App Group container, what guarantees are provided by the system? • Is atomic replaceItemAt the r
1
0
131
4w
AVAssetDownloadConfiguration: How many video variants are actually downloaded when multiple variants exist in the HLS master playlist?
Hi, I’m trying to better understand how AVAssetDownloadConfiguration selects video variants when downloading HLS content for offline playback. Suppose I have an HLS master playlist (.m3u8) that contains several video variants defined with #EXT-X-STREAM-INF. For example, the master playlist may contain multiple video streams like this: Same resolution, different BANDWIDTH Or different resolutions (for example 720p, 1080p, etc.) My question is: How many video variants are actually downloaded when using AVAssetDownloadConfiguration without specifying any variantQualifiers? In other words: If the master playlist contains multiple video variants, will the download task fetch only one variant, or multiple variants? Does the behavior differ depending on whether the variants differ only by BANDWIDTH or also by RESOLUTION? What I observed in testing In my tests, I always end up with only one video variant downloaded, specifically the one with the highest BANDWIDTH parameter. In the m3u8 files I tested, all video varia
1
0
294
4w
Reply to Sharing all container content
I want to share all the content of a CloudKit database at once between different iCloud accounts. For example, to manage products storage between users. Once the database has been shared or an invitation has been accepted, any additions/modifications/deletions to storage or products must be shared between all users without additional sharing. To be short after the first sharing, everything must be shared without additional new sharing. I think I can't do this in SwiftData (would be the best solution for me as all the current app is based on SwiftDaa) and that I need to use move to CoreData. Is that correct? Or does a mixed solution may be possible (ie .storage with SWiftData and sharing with CoreData)? It seems that “Zone Wide Sharing” could be the solution? But I can't find a sufficiently comprehensive example and I wasn't able to make something working. Ultimately, I realize that this is not a very common use case. With the ZoneWide Sharing does it means that we must do a affectedStores or assign(_:to:) to
4w
Reply to PHAssetCreationRequest merges new Burst Photos into "Recently Deleted" instead of Library
Hi Richard, Thank you for the guidance. I have tested fetchAssetsWithBurstIdentifier:options: as you suggested and confirmed that I can locate the assets sharing the same burstIdentifier even when they are not appearing in the main Library. Here is the core of the issue I’m facing: While I can fetch these assets, there is no explicit property on PHAsset to determine if it currently resides in the Recently Deleted album. In our app's workflow, PHPhotoLibrary returns success = YES during the performChanges block. However, because the new burst is automatically grouped with an existing deleted set, the photo is immediately invisible to the user in the main Library. Our intended UX is to show a warning alert to the user if we detect that a matching burstIdentifier already exists in the Recently Deleted album. This prevents the confusion of a successful save that results in an invisible file. Question for clarification: Is there a recommended, officially supported way to identify if a PHAsset returned by
Topic: UI Frameworks SubTopic: UIKit Tags:
Mar ’26
Screentime API Main App + Shield Questions
I'm building an app that uses the Family Controls / Screen Time APIs (FamilyControls, ManagedSettings). My app has three targets, each with a distinct Bundle ID: Main App Shield Configuration Extension ShieldAction Extension All three have com.apple.developer.family-controls in their entitlements files, and they share an App Group. My question is about the distribution entitlement request form at developer.apple.com/contact/request/family-controls-distribution: does the form need to be submitted once per Bundle ID, or is a single submission for the main app sufficient to then enable Family Controls (Distribution) for the extension Bundle IDs in the developer portal as well? I've seen conflicting reports in other forum threads — some developers say one submission covers all targets, others say separate submissions are needed per Bundle ID. I've already submitted the main app, but now I am wondering whether I should submit one for each Shield extension. Thanks!
4
0
160
Mar ’26
Rejected for "Guideline 4.2 - Design - Minimum Functionality"
Of all the reasons I thought I might be rejected, I never thought this might be a possibility! The usefulness of the app is limited by the minimal functionality it currently provides. My app lets you track where you are in TV shows - you can add a show, tag shows (which appear as tabs), expand a show's seasons, mark an episode as watched, tap an episode to view its summary, and (if you have It installed) open the episode in Callsheet. You can also get a notification when a new season of a show drops. **Does anyone have experience with dealing with this kind of rejection? ** I'm wondering if they are dealing with an onslaught of vibe coded apps and are being more liberal with this rejection (this is not vibe coded!). The whole point of this app is that I didn't want a cluttered app with recommendations and other nonsense - I specifically wanted a simple, clean UI. https://tvnext.app Thanks, Damian App Id: 6757971087
2
0
71
Mar ’26
tvOS Simulator (also Xcode Canvas) Mapview Artifacts After Xcode Crash (26.3)
Have a peculiar problem I'm not able to solve. Working on an app with a mapview in the max zoomed out globe level. For some reason this morning Xcode froze/crashed when I was working and I had to force quit to get it back up. Then a new issue of graphical artifacts on the space section of the Mapview showed up. This Tuesday has now been spent in full on trying to solve this to no avail. I created a new project for iOS/iPadOS and added a similar map implementation. It works fine. I used Claude to help me after a few reinstalls of Xcode with this. I asked claude to summarize - this is what has been done: Claude generative AI summary starts here---------- Here's a complete summary of everything attempted: The Problem SwiftUI tvOS app with MapKit globe view showing severe rendering artifacts — corrupted pixels surrounding the globe. Started after Xcode crashed while the tvOS simulator was actively running. iOS simulator, macOS Maps app, and all native apps work perfectly. Only tvOS simulator Map
2
0
128
Mar ’26
First Auto-Renewable Subscription – getSubscriptions returns empty in TestFlight
Hi, I am submitting auto-renewable subscriptions for the first time for a brand new iOS app (never approved before). Setup: App ID has In-App Purchase capability enabled Subscriptions created under a subscription group All metadata (pricing, localization, availability) completed Subscriptions currently show In Review Testing via TestFlight build Bundle ID matches App Store Connect Using react-native-iap (StoreKit under the hood) When calling: await getSubscriptions({ skus }) I consistently get: products fetched: 0 ProductsUnavailableError Also, the app version page does not show the “In-App Purchases and Subscriptions” section. Question: For a brand new app, will StoreKit return empty products while the first subscriptions are in review? Do the first subscriptions need to be approved and/or attached to a new app version before they become available in TestFlight sandbox? Thanks for any clarification.
1
0
92
Mar ’26
Is Screen Time trapped inside DeviceActivityReport on purpose?
I can see the user’s real daily Screen Time perfectly inside a DeviceActivityReport extension on a physical device. It’s right there. But the moment I try to use that exact total inside my main app (for today’s log and a leaderboard), it dosnt work. I’ve tried, App Groups, Shared UserDefaults, Writing to a shared container file, CFPreferences Nothing makes it across. The report displays fine, but the containing app never receives the total. If this is sandboxed by design, I’d love confirmation. Thanks a lot
2
0
544
Mar ’26
Reply to Getting a basic URL Filter to work
Of course the new beta would break the whole thing immediately 😅 Now all I get is : -[NEPIRChecker start:responseQueue:completionHandler:] - failed to register with PIR for Group site.kaylees.Wipr2 usecase site.kaylees.Wipr2.url.filtering even with no errors on the server side. My kingdom for a flag to ignore the PIR server completely and just “fail closed” on the bloom filter. Why do we even need to register with the server in order to enable a “fail closed” filter? I see that pirSkipRegistration flag in the logs, can we have it please? 😬 Or like a normal API with a JSON file like Content Blockers and regex and bundle ID filtering, but I guess that’s asking too much 😬
Mar ’26
EAS Build failure - Family Controls entitlement missing despite Apple Approval
Context: I am building an iOS productivity app using EAS Build. The project has 4 targets: the main app and 3 extensions (ShieldAction, ShieldConfiguration, ActivityMonitorExtension). The Issue: I have officially received approval from Apple for the Family Controls (Distribution) entitlement for my main Bundle ID. However, the build still fails during the Xcode phase. The Errors: Xcode reports that the generated provisioning profiles do not include the com.apple.developer.family-controls entitlement. For example: Provisioning profile *[expo] com.*.** AdHoc 177247892.... doesn't support the Family Controls capability. All 3 extensions are failing with the exact same error. What I've done: Confirmed approval from Apple for com.*.**. Enabled Family Controls and App Groups on the Apple Developer Portal for all 4 Identifiers. Cleared EAS local and remote cache using eas build --clear-cache. Deleted existing profiles on both Expo.dev and Apple Portal to force regeneration. The Question: Even with official
1
0
168
Mar ’26
Health app fails to ingest FHIR Clinical Records on iOS 26.2 (healthappd crash) – Works on iOS 18.1
Area Health & Fitness → HealthKit → Health Records (FHIR Ingestion) Summary On devices running iOS 26.2, FHIR Clinical Records successfully connect and validate, but no data (Procedure, DiagnosticReport, Observation, etc.) is ingested into the Health app. The same FHIR server and patient connection works correctly on iOS 18.1, where all data syncs and displays as expected. On iOS 26.2: FHIR validation passes in Health Records “Last Download Date” updates Patient data is visible in connection No clinical data appears in Health app No apps are listed under Privacy → Health Device shows “No Data Found” Crash logs show healthappd terminating during ingestion This appears to be a regression in the HealthPlatform / HealthKit ingestion pipeline in iOS 26. Steps to Reproduce Use an iPhone running iOS 26.2 Open Health app Add Health Record from FHIR server Authenticate successfully Confirm FHIR validation screen shows all resources as “Passed” Wait for sync to complete Expected Result Procedures, Diagnost
1
0
145
Mar ’26
Health app fails to ingest FHIR Clinical Records on iOS 26.2 (healthappd crash) – Works on iOS 18.1
Area Health & Fitness → HealthKit → Health Records (FHIR Ingestion) Summary On devices running iOS 26.2, FHIR Clinical Records successfully connect and validate, but no data (Procedure, DiagnosticReport, Observation, etc.) is ingested into the Health app. The same FHIR server and patient connection works correctly on iOS 18.1, where all data syncs and displays as expected. On iOS 26.2: FHIR validation passes in Health Records “Last Download Date” updates Patient data is visible in connection No clinical data appears in Health app No apps are listed under Privacy → Health Device shows “No Data Found” Crash logs show healthappd terminating during ingestion This appears to be a regression in the HealthPlatform / HealthKit ingestion pipeline in iOS 26. Steps to Reproduce Use an iPhone running iOS 26.2 Open Health app Add Health Record from FHIR server Authenticate successfully Confirm FHIR validation screen shows all resources as “Passed” Wait for sync to complete Expected Result Procedures, Diagnost
1
0
140
Mar ’26
Reply to App group broken on Sequoia
The macOS 15 development cycle triggered a bunch of changes in app groups. See App Groups: macOS vs iOS: Working Towards Harmony for the backstory. Going forward, I recommend that you: Decide on the app group ID you want to use. This can use either the macOS style or iOS style. For new code I recommend the iOS style, although if you have an exist product that uses the macOS style it usually makes sense to stick with that. For each program involved (so your app and your file provider appex)… Make sure it has an explicit App ID. Create a profile that authorises that App ID to access your app group. Make sure that profile gets embedded in the program’s bundle. Sign the program to claim access to that app group. IMPORTANT Make sure to sign the program with com.apple.application-identifier so that the system can associated the program with its provisioning profile. If you’re using Xcode, it will typically take care of this for you, although my experience is that this wo
Topic: Code Signing SubTopic: Entitlements Tags:
Mar ’26
Inquiry: iOS capability to read EMV credit/debit cards via NFC (Core NFC) and acceptable alternatives
Hello Apple Developer Technical Support Team, I’m working on an iOS banking/security SDK and we’re trying to match an Android feature that reads payment cards via NFC (EMV). On Android, this is implemented using an NFC scanning screen (e.g., “NfcScanActivity”) that can read EMV data from contactless credit/debit cards. Could you please clarify the current iOS capabilities and App Store policy around this? On iOS, is it currently possible for a third-party App Store app to read contactless credit/debit cards using Core NFC (i.e., accessing EMV application data/AIDs from payment cards)? If this is possible, what are the supported APIs/frameworks and any entitlement requirements (if applicable)? If this is not possible for App Store apps, could you recommend the closest acceptable alternatives for achieving a similar user outcome? For example: Using Apple Pay / PassKit flows for payment-related experiences Card scanning alternatives (camera-based OCR) for capturing card details (if allowed) Using an external cer
Replies
0
Boosts
0
Views
77
Activity
4w
Clarification on concurrency guarantees for shared data between App and Widget extensions
Hi, I’m looking for clarification on what concurrency and consistency guarantees Apple provides when multiple targets (main app + Widget extensions) access shared storage. Specifically: 1. UserDefaults (App Group / suiteName:) • If multiple processes (app + multiple widget instances) read and write the same shared UserDefaults, what guarantees are provided? • Is access serialized internally to prevent corruption? • Are read–modify–write operations safe across processes, or can lost updates occur? 2. Core Data (shared SQLite store in App Group container) • Is it officially supported for multiple processes to open and write to the same Core Data SQLite store? • Are there recommended configurations (e.g. WAL mode) for safe multi-process access? • Is Apple’s recommendation to have a single writer process? 3. FileManager (shared container files) • If two processes write to the same file in an App Group container, what guarantees are provided by the system? • Is atomic replaceItemAt the r
Replies
1
Boosts
0
Views
131
Activity
4w
AVAssetDownloadConfiguration: How many video variants are actually downloaded when multiple variants exist in the HLS master playlist?
Hi, I’m trying to better understand how AVAssetDownloadConfiguration selects video variants when downloading HLS content for offline playback. Suppose I have an HLS master playlist (.m3u8) that contains several video variants defined with #EXT-X-STREAM-INF. For example, the master playlist may contain multiple video streams like this: Same resolution, different BANDWIDTH Or different resolutions (for example 720p, 1080p, etc.) My question is: How many video variants are actually downloaded when using AVAssetDownloadConfiguration without specifying any variantQualifiers? In other words: If the master playlist contains multiple video variants, will the download task fetch only one variant, or multiple variants? Does the behavior differ depending on whether the variants differ only by BANDWIDTH or also by RESOLUTION? What I observed in testing In my tests, I always end up with only one video variant downloaded, specifically the one with the highest BANDWIDTH parameter. In the m3u8 files I tested, all video varia
Replies
1
Boosts
0
Views
294
Activity
4w
Reply to Sharing all container content
I want to share all the content of a CloudKit database at once between different iCloud accounts. For example, to manage products storage between users. Once the database has been shared or an invitation has been accepted, any additions/modifications/deletions to storage or products must be shared between all users without additional sharing. To be short after the first sharing, everything must be shared without additional new sharing. I think I can't do this in SwiftData (would be the best solution for me as all the current app is based on SwiftDaa) and that I need to use move to CoreData. Is that correct? Or does a mixed solution may be possible (ie .storage with SWiftData and sharing with CoreData)? It seems that “Zone Wide Sharing” could be the solution? But I can't find a sufficiently comprehensive example and I wasn't able to make something working. Ultimately, I realize that this is not a very common use case. With the ZoneWide Sharing does it means that we must do a affectedStores or assign(_:to:) to
Replies
Boosts
Views
Activity
4w
Reply to PHAssetCreationRequest merges new Burst Photos into "Recently Deleted" instead of Library
Hi Richard, Thank you for the guidance. I have tested fetchAssetsWithBurstIdentifier:options: as you suggested and confirmed that I can locate the assets sharing the same burstIdentifier even when they are not appearing in the main Library. Here is the core of the issue I’m facing: While I can fetch these assets, there is no explicit property on PHAsset to determine if it currently resides in the Recently Deleted album. In our app's workflow, PHPhotoLibrary returns success = YES during the performChanges block. However, because the new burst is automatically grouped with an existing deleted set, the photo is immediately invisible to the user in the main Library. Our intended UX is to show a warning alert to the user if we detect that a matching burstIdentifier already exists in the Recently Deleted album. This prevents the confusion of a successful save that results in an invisible file. Question for clarification: Is there a recommended, officially supported way to identify if a PHAsset returned by
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Mar ’26
Screentime API Main App + Shield Questions
I'm building an app that uses the Family Controls / Screen Time APIs (FamilyControls, ManagedSettings). My app has three targets, each with a distinct Bundle ID: Main App Shield Configuration Extension ShieldAction Extension All three have com.apple.developer.family-controls in their entitlements files, and they share an App Group. My question is about the distribution entitlement request form at developer.apple.com/contact/request/family-controls-distribution: does the form need to be submitted once per Bundle ID, or is a single submission for the main app sufficient to then enable Family Controls (Distribution) for the extension Bundle IDs in the developer portal as well? I've seen conflicting reports in other forum threads — some developers say one submission covers all targets, others say separate submissions are needed per Bundle ID. I've already submitted the main app, but now I am wondering whether I should submit one for each Shield extension. Thanks!
Replies
4
Boosts
0
Views
160
Activity
Mar ’26
Rejected for "Guideline 4.2 - Design - Minimum Functionality"
Of all the reasons I thought I might be rejected, I never thought this might be a possibility! The usefulness of the app is limited by the minimal functionality it currently provides. My app lets you track where you are in TV shows - you can add a show, tag shows (which appear as tabs), expand a show's seasons, mark an episode as watched, tap an episode to view its summary, and (if you have It installed) open the episode in Callsheet. You can also get a notification when a new season of a show drops. **Does anyone have experience with dealing with this kind of rejection? ** I'm wondering if they are dealing with an onslaught of vibe coded apps and are being more liberal with this rejection (this is not vibe coded!). The whole point of this app is that I didn't want a cluttered app with recommendations and other nonsense - I specifically wanted a simple, clean UI. https://tvnext.app Thanks, Damian App Id: 6757971087
Replies
2
Boosts
0
Views
71
Activity
Mar ’26
tvOS Simulator (also Xcode Canvas) Mapview Artifacts After Xcode Crash (26.3)
Have a peculiar problem I'm not able to solve. Working on an app with a mapview in the max zoomed out globe level. For some reason this morning Xcode froze/crashed when I was working and I had to force quit to get it back up. Then a new issue of graphical artifacts on the space section of the Mapview showed up. This Tuesday has now been spent in full on trying to solve this to no avail. I created a new project for iOS/iPadOS and added a similar map implementation. It works fine. I used Claude to help me after a few reinstalls of Xcode with this. I asked claude to summarize - this is what has been done: Claude generative AI summary starts here---------- Here's a complete summary of everything attempted: The Problem SwiftUI tvOS app with MapKit globe view showing severe rendering artifacts — corrupted pixels surrounding the globe. Started after Xcode crashed while the tvOS simulator was actively running. iOS simulator, macOS Maps app, and all native apps work perfectly. Only tvOS simulator Map
Replies
2
Boosts
0
Views
128
Activity
Mar ’26
First Auto-Renewable Subscription – getSubscriptions returns empty in TestFlight
Hi, I am submitting auto-renewable subscriptions for the first time for a brand new iOS app (never approved before). Setup: App ID has In-App Purchase capability enabled Subscriptions created under a subscription group All metadata (pricing, localization, availability) completed Subscriptions currently show In Review Testing via TestFlight build Bundle ID matches App Store Connect Using react-native-iap (StoreKit under the hood) When calling: await getSubscriptions({ skus }) I consistently get: products fetched: 0 ProductsUnavailableError Also, the app version page does not show the “In-App Purchases and Subscriptions” section. Question: For a brand new app, will StoreKit return empty products while the first subscriptions are in review? Do the first subscriptions need to be approved and/or attached to a new app version before they become available in TestFlight sandbox? Thanks for any clarification.
Replies
1
Boosts
0
Views
92
Activity
Mar ’26
Is Screen Time trapped inside DeviceActivityReport on purpose?
I can see the user’s real daily Screen Time perfectly inside a DeviceActivityReport extension on a physical device. It’s right there. But the moment I try to use that exact total inside my main app (for today’s log and a leaderboard), it dosnt work. I’ve tried, App Groups, Shared UserDefaults, Writing to a shared container file, CFPreferences Nothing makes it across. The report displays fine, but the containing app never receives the total. If this is sandboxed by design, I’d love confirmation. Thanks a lot
Replies
2
Boosts
0
Views
544
Activity
Mar ’26
Reply to Getting a basic URL Filter to work
Of course the new beta would break the whole thing immediately 😅 Now all I get is : -[NEPIRChecker start:responseQueue:completionHandler:] - failed to register with PIR for Group site.kaylees.Wipr2 usecase site.kaylees.Wipr2.url.filtering even with no errors on the server side. My kingdom for a flag to ignore the PIR server completely and just “fail closed” on the bloom filter. Why do we even need to register with the server in order to enable a “fail closed” filter? I see that pirSkipRegistration flag in the logs, can we have it please? 😬 Or like a normal API with a JSON file like Content Blockers and regex and bundle ID filtering, but I guess that’s asking too much 😬
Replies
Boosts
Views
Activity
Mar ’26
EAS Build failure - Family Controls entitlement missing despite Apple Approval
Context: I am building an iOS productivity app using EAS Build. The project has 4 targets: the main app and 3 extensions (ShieldAction, ShieldConfiguration, ActivityMonitorExtension). The Issue: I have officially received approval from Apple for the Family Controls (Distribution) entitlement for my main Bundle ID. However, the build still fails during the Xcode phase. The Errors: Xcode reports that the generated provisioning profiles do not include the com.apple.developer.family-controls entitlement. For example: Provisioning profile *[expo] com.*.** AdHoc 177247892.... doesn't support the Family Controls capability. All 3 extensions are failing with the exact same error. What I've done: Confirmed approval from Apple for com.*.**. Enabled Family Controls and App Groups on the Apple Developer Portal for all 4 Identifiers. Cleared EAS local and remote cache using eas build --clear-cache. Deleted existing profiles on both Expo.dev and Apple Portal to force regeneration. The Question: Even with official
Replies
1
Boosts
0
Views
168
Activity
Mar ’26
Health app fails to ingest FHIR Clinical Records on iOS 26.2 (healthappd crash) – Works on iOS 18.1
Area Health & Fitness → HealthKit → Health Records (FHIR Ingestion) Summary On devices running iOS 26.2, FHIR Clinical Records successfully connect and validate, but no data (Procedure, DiagnosticReport, Observation, etc.) is ingested into the Health app. The same FHIR server and patient connection works correctly on iOS 18.1, where all data syncs and displays as expected. On iOS 26.2: FHIR validation passes in Health Records “Last Download Date” updates Patient data is visible in connection No clinical data appears in Health app No apps are listed under Privacy → Health Device shows “No Data Found” Crash logs show healthappd terminating during ingestion This appears to be a regression in the HealthPlatform / HealthKit ingestion pipeline in iOS 26. Steps to Reproduce Use an iPhone running iOS 26.2 Open Health app Add Health Record from FHIR server Authenticate successfully Confirm FHIR validation screen shows all resources as “Passed” Wait for sync to complete Expected Result Procedures, Diagnost
Replies
1
Boosts
0
Views
145
Activity
Mar ’26
Health app fails to ingest FHIR Clinical Records on iOS 26.2 (healthappd crash) – Works on iOS 18.1
Area Health & Fitness → HealthKit → Health Records (FHIR Ingestion) Summary On devices running iOS 26.2, FHIR Clinical Records successfully connect and validate, but no data (Procedure, DiagnosticReport, Observation, etc.) is ingested into the Health app. The same FHIR server and patient connection works correctly on iOS 18.1, where all data syncs and displays as expected. On iOS 26.2: FHIR validation passes in Health Records “Last Download Date” updates Patient data is visible in connection No clinical data appears in Health app No apps are listed under Privacy → Health Device shows “No Data Found” Crash logs show healthappd terminating during ingestion This appears to be a regression in the HealthPlatform / HealthKit ingestion pipeline in iOS 26. Steps to Reproduce Use an iPhone running iOS 26.2 Open Health app Add Health Record from FHIR server Authenticate successfully Confirm FHIR validation screen shows all resources as “Passed” Wait for sync to complete Expected Result Procedures, Diagnost
Replies
1
Boosts
0
Views
140
Activity
Mar ’26
Reply to App group broken on Sequoia
The macOS 15 development cycle triggered a bunch of changes in app groups. See App Groups: macOS vs iOS: Working Towards Harmony for the backstory. Going forward, I recommend that you: Decide on the app group ID you want to use. This can use either the macOS style or iOS style. For new code I recommend the iOS style, although if you have an exist product that uses the macOS style it usually makes sense to stick with that. For each program involved (so your app and your file provider appex)… Make sure it has an explicit App ID. Create a profile that authorises that App ID to access your app group. Make sure that profile gets embedded in the program’s bundle. Sign the program to claim access to that app group. IMPORTANT Make sure to sign the program with com.apple.application-identifier so that the system can associated the program with its provisioning profile. If you’re using Xcode, it will typically take care of this for you, although my experience is that this wo
Topic: Code Signing SubTopic: Entitlements Tags:
Replies
Boosts
Views
Activity
Mar ’26