Hi everyone,
I'm developing a Flutter-based proximity app and would appreciate some technical advice.
The goal is to detect when two iPhones are physically near each other, even when both phones are locked and the app is running in the background.
For example, two users pass each other on the street for 20–40 seconds. We want to reliably identify that encounter, even if the information is processed later.
I'm considering combining Core Bluetooth (BLE scanning/advertising) with Core Location (background GPS) to minimise missed encounters.
My main questions are:
-
Can two locked iPhones reliably detect each other through background BLE?
-
Can background GPS provide sufficiently frequent location updates to capture brief encounters?
-
Are there supported ways to combine both technologies to improve reliability?
Accuracy isn't necessarily critical. Avoiding missed encounters is the priority.
I'd really appreciate any advice or experience with similar implementations.
Thanks!