Reviewed against Xcode 26.6 and the iOS 26.5 SDK on 16 September 2026.

Documented by Apple Known fact

#StatementSource
A1Scanning with no service list "returns all discovered peripherals, regardless of their supported services." Apple's recommended practice is to populate the service UUID parameter rather than leaving it empty.scanForPeripherals(withServices:options:)
A2Background scanning requires the bluetooth-central background mode and the app "must explicitly scan for one or more services by specifying them in the serviceUUIDs parameter." Scan options have no effect in the background.same page
A3In the background, the allow-duplicates scan option is ignored and "multiple discoveries of an advertising peripheral are coalesced into a single discovery event."Core Bluetooth Background Processing
A4"If all apps that are scanning for peripherals are in the background, the interval at which your central device scans for advertising packets increases. As a result, it may take longer to discover an advertising peripheral."same page
A5Even with background modes, an app "can't run forever. At some point, the system may need to terminate your app to free up memory."same page
A6State preservation and restoration is opt-in via a restore identifier; the delegate receives a will-restore-state callback.CBCentralManagerOptionRestoreIdentifierKey
A7Relaunch rules: an app is relaunched after memory eviction, a crash, a Control Center Bluetooth toggle, an Airplane Mode toggle, or a restart after first unlock; it is not relaunched after a user force-quit or a Settings Bluetooth toggle. "Starting in iOS 26 and iPadOS 26, only apps that use AccessorySetupKit to setup Bluetooth accessories will be relaunched."TN3115
A8The Bluetooth usage description key "is required if your app uses the device's Bluetooth interface."NSBluetoothAlwaysUsageDescription
A9Advertisement fields exposed to apps: local name, manufacturer data, service data, service UUIDs, overflow service UUIDs, transmit power level, is-connectable, solicited service UUIDs. Nothing else, and no hardware (MAC) address.Advertisement Data Retrieval Keys
A10RSSI is "the current received signal strength indicator (RSSI) of the peripheral, in decibels." Apple suggests it can be used to determine proximity, which is coarse, not a distance.centralManager(_:didDiscover:advertisementData:rssi:)

Stated by Apple staff on the developer forums Known fact

Authoritative but not formal documentation.

  • F1. Background scanning "will be limited to scans for specific UUIDs, may be throttled, will not detect multiple advertisements, and will not read secondary advertisement packets (SCAN_RSP) unless the app is in the foreground and in use." (thread 815189)
  • F2. "iOS 26 adds the existence of a Live Activity for an app to be considered sufficiently in use to continue scanning without these limitations, but on a locked screen which is turned off even the Live Activity is no longer sufficiently in use, so the scanning behavior will change. There are no supported workarounds for this limitation." (same thread)

Inference F1 means scan-response data, which may carry the local name or extra service UUIDs for some devices, is only available in the foreground. A signature that depends on scan-response-only fields will silently degrade in the background. F2 means a Live Activity is the documented lever for unrestricted scanning while the app is backgrounded with the screen on; once the screen turns off, the restrictions return. That is the technical ceiling for any background feature.

Observed in our testing Observed in our testing

Assumptions to be tested Inference

  • S1. Ray-Ban and Oakley Meta glasses advertise a service UUID that can be used as a background filter (candidate 0xFD5F). If they advertise no service UUID, background detection via Core Bluetooth is not possible at all (A2).
  • S2. Glasses paired to another phone may advertise differently, or not at all, compared with unpaired glasses or glasses in pairing mode. This is the single most important real-world question, because bystanders' glasses are by definition paired to someone else's phone.

Unknown Unknown

  • U1. Whether iOS 26.x changes the background scan interval further on Bluetooth 6 hardware (iPhone 17). Community reports of background scanning stopping exist (thread 801742) but were not confirmed by Apple in the thread we reviewed.
  • U2. The exact coalescing window for background discovery events.
  • U3. Whether AccessorySetupKit is usable at all for a scanner that never pairs; it is designed for accessory setup and would add a system UI flow.

What this means for the product

  • Any background feature will be described as "while your iPhone is unlocked or a Live Activity is showing", and its settings copy will say that background detection is slower and may miss devices.
  • Never wording that promises constant, guaranteed or complete coverage.
  • Foreground scanning, with the app open, is the primary mode and the one we will validate first.

Related pages

Sources

  1. Apple documentation (see table) — Apple Developer Documentation, accessed 16 September 2026
  2. Apple documentation (see table) — Apple Developer Documentation, accessed 16 September 2026
  3. CBCentralManagerOptionRestoreIdentifierKey — Apple Developer Documentation, accessed 16 September 2026
  4. TN3115 — Apple Developer Documentation, accessed 16 September 2026
  5. NSBluetoothAlwaysUsageDescription — Apple Developer Documentation, accessed 16 September 2026
  6. Advertisement Data Retrieval Keys — Apple Developer Documentation, accessed 16 September 2026
  7. centralManager(_:didDiscover:advertisementData:rssi:) — Apple Developer Documentation, accessed 16 September 2026
  8. Developer Forums thread 815189 (Apple engineer on background scanning and Live Activities) — Apple Developer Forums, accessed 16 September 2026
  9. Developer Forums thread 801742 (community reports about iPhone 17 background scanning) — Apple Developer Forums, accessed 16 September 2026