First of all, my English skills are not good, so I wrote an AI program and sent it to complete the questions. sorry.
I'm developing a safety monitoring application that requires continuous BLE scanning for temperature and humidity sensors. I need clarification on the technical feasibility of background and sleep mode operation.
Key Requirements:
- Continuous monitoring of BLE advertisements from temperature/humidity sensors
- Must detect critical temperature/humidity changes immediately
- Data logging every minute
- Includes navigation features showing routes
Technical Questions:
- Background Mode Operation
- If using background modes (bluetooth-central + location):
- Can we receive BLE advertisements reliably?
- What is the actual scanning interval limitation?
- Will CBCentralManagerScanOptionAllowDuplicatesKey limitation affect critical monitoring?
- Sleep Mode Operation
- Can the app maintain BLE scanning during device sleep?
- Would combining with navigation background mode help?
- Are there any recommended approaches for continuous monitoring?
Sample Code of Current Approach:
let options: [String: Any] = [
CBCentralManagerOptionShowPowerAlertKey: true,
CBCentralManagerOptionRestoreIdentifierKey: "uniqueIdentifier"
]
centralManager = CBCentralManager(delegate: self, queue: nil, options: options)
// Scanning setup
centralManager.scanForPeripherals(
withServices: [serviceUUID],
options: [CBCentralManagerScanOptionAllowDuplicatesKey: true]
)
Has anyone successfully implemented continuous BLE monitoring in background/sleep modes? Are there any special entitlements or techniques that could help achieve this?
This is for a safety-critical application where missing sensor data could lead to serious issues.
Any guidance would be greatly appreciated.