unfortunately, neither GPS nor Bluetooth are able to measure the distance as needed. GPS is not working indoor. It MAY happen, maybe, into some lab, with two identical phones, that you can use Bluetooth or NFC to know the distance with the precision needed, but using random brand, random chip, random android/MacOS version, and random libraries, you have NO WAY to get what you want.
App to stop coronavirus is just magical thinking.
1. it's decentralized. There is no server where anyone with access could just ask for some data. It's random generated keys local on your smartphone and you only share them with the other person, so every encounter gets an own key pair, n
2. It's a random generated key PER ENCOUNTER, not just per person, so you don't know, who you've met, just know, that you had an encounter with a specific key. It works like that -> if someone gets tested positive, they upload all of their keys without any ressemblance between each key, so you can't retrace the person