Вам нужен только GPS, если вы хотите точное местоположение. Если устройство просто не имеет GPS, то вы можете оценить с меньшей точностью через NETWORK_PROVIDER. Это обычно подходит, если вам просто нужно общее местоположение пользователя (западная сторона города, возле мемориала и т. Д.). Если вам абсолютно необходимо, чтобы ваше приложение работало с определенной точностью, то вы, пользователь без GPS, просто неудачны.
В качестве альтернативы, если вы включили GPS, а у пользователя нет GPS, он просто не получит обновления. В этом случае вам придется упомянуть, что обновления не являются точными из-за отсутствия GPS, и пользователю придется использовать более слабую версию вашего приложения.