В телефоне нет провайдера, который может определить местоположение, т. Е. Он не подключен ни к GPS
, ни к WI-FI
, и в этом случае провайдер передается как нулевой. Предполагается, что вы предоставляете аргумент provider
для функции requestLocationUpdates()
, находя лучшего поставщика, который вернет ноль, если он не может его найти.
Я бы сначала проверил, включен ли какой-либо провайдер, прежде чем приступить к дальнейшему рассмотрению этого вопроса. Чтобы избежать передачи значения null в качестве поставщика, проверьте, является ли поставщик нулевым, перед вызовом обновления местоположения.
if (provider != null) {
requestLocationUpdates()
} else {
// alert user asking him to enable one of the providers.
}
Вот как ты это делаешь.
НТН.