Scanning multiple NFC tags in a row without restarting the session each time?

I'm building an accessibility feature where a user walks around and taps NFC tags to trigger updates in the app (e.g., wayfinding/context info).

I want a "Live Mode" toggle that keeps the app listening for NFC reads continuously while it's on, processing each tag as it's scanned, rather than one-shot read-and-dismiss.

Is there a Core NFC API or session configuration that supports this kind of continuous/persistent listening, or does every read still require invalidating and restarting the session afterward?

Currently: I have high-performant reads working reliably with passive NDEF/tag detection.

What I'm trying to figure out:

  1. Recommended approach — should I keep a single long-lived NFCReaderSession alive and handle repeated reads within it, or restart a new session immediately after each read?
  2. VoiceOver / accessibility — how does the system NFC sheet interact with VoiceOver, especially if the session is restarting frequently while the user is mid-walk?
  3. Session timeout and restart handling — what's the best way to detect and recover from a session timing out or invalidating unexpectedly, without the user noticing a gap in "Live Mode"?
  4. Battery/radio use — are there known concerns with keeping NFC polling active over an extended period (minutes, not seconds)?

Thank you.

Scanning multiple NFC tags in a row without restarting the session each time?
 
 
Q