Why is the location service required for an Android device to determine a Wi-Fi network name?

Due to Android policy changes, since Android 8.1, you may need to turn on the location service on your mobile device to determine the active Wi-Fi name (SSID).

Google's argument is that the Wi-Fi names might be used to determine your location. For the record: at Mobile Vikings, we do not determine your location. We simply have to go with this Google policy for Android devices.

This is why you need to give the My Viking app location permission, and location services need to be active (usually by enabling "location" in the Android quick settings).