In addition to iBeacons and GPS, can't we use WiFi BSSID's or Corporate VPN/DNS/Proxy check to determine user location?
You can check a connected Wi-Fi networks BSSID using the CNCopyCurrentNetworkInfo API which requires the Wi-Fi Information Entitlement (you can select this in Xcode).
https://developer.apple.com/documentation/systemconfiguration/1614126-cncopycurrentnetworkinfo
I'd also consider the privacy of the end user here. Whats the use case to determine a User's location? Is it for the User to determine their own location? (such as a blue dot indoors) in order for them to navigate through a building. Or for some other purpose?
I would not advocate using Wi-Fi to track user location.
You may want to also consider the Indoor Maps Program (which includes Indoor Positioning). This uses the Wi-Fi infrastructure in a users locality to determine their location and as a benefit allows the blue dot in Maps to be more accurate indoors.
https://developer.apple.com/videos/play/wwdc2019/245/
https://developer.apple.com/documentation/systemconfiguration/1614126-cncopycurrentnetworkinfo
I'd also consider the privacy of the end user here. Whats the use case to determine a User's location? Is it for the User to determine their own location? (such as a blue dot indoors) in order for them to navigate through a building. Or for some other purpose?
I would not advocate using Wi-Fi to track user location.
You may want to also consider the Indoor Maps Program (which includes Indoor Positioning). This uses the Wi-Fi infrastructure in a users locality to determine their location and as a benefit allows the blue dot in Maps to be more accurate indoors.
https://developer.apple.com/videos/play/wwdc2019/245/