Одним из параметров API геокодирования Карт Google является сенсор :
"датчик (обязательно) - указывает, поступает ли запрос геокодирования с устройства с датчиком местоположения. Это значение должно быть либо истинным, либо ложным."
Вам, вероятно, придется выполнить проверку пользовательской среды, чтобы определить, использует ли она GPS, а затем передать значение в качестве параметра для датчика. Это может варьироваться в зависимости от среды (по крайней мере, я не знаю, как сделать ее нейтральной к платформе).
Другой возможностью является использование Google ClientLocation, которое, как мне кажется, использует только местоположение на основе IP. Затем вы можете сравнить это с вашим значением. Если они одинаковы, то вы знаете.