If it’s working as it’s supposed to, you have to be very close to the car to unlock.
If fact the app doesn’t even need to be (visibly) running on an iPhone. iOS will launch the app in background and it won’t be visible. I’ve written iOS apps that do this. Requires background processing. If you don’t want iOS to do that you want to disable background processing on the app. And it will require the app be launched to unlock (I forget if it has to be in foreground to). This is also what the face recognition option does in the app. I think as long as you unlock the phone it will allow car to unlock and start. But you don’t have to launch the app (it’s already running)
If you launch the app and then kill it, it won’t unlock (for a short bit) but iOS could relaunch the app in background at any time.
My app has audio voice associated with these states so I know exactly what it’s doing in background. It so happens to connect to a BLE device as well. The app registers to be woken up in background when the phone OS sees the BLE device. If you look under battery usage you’ll see Tesla with the text “Background Activity” below it.
Tesla did a great job with the iOS app. I know so many companies that don’t do it right.