Pergunta

Meu aplicativo requer localização atual do usuário. Para isso, implementei o código e sou capaz de obter o local atual. O código tenta obter o melhor provedor primeiro e depois buscar informações de localização. O problema é que o local atual é retornado do Network_Provider se GPS_Provider estiver desativado. Se o Network_Provider e o GPS_Provider estiverem ativados, o melhor provedor será GPS_Provider e isso levará muito tempo para obter o local atual.

Portanto, está tudo bem se definirmos o provedor de localização como Network_Provider apenas para que não importe se GPS_Provider está ativado ou não.

Por favor, deixe -me saber qual é a abordagem certa.

Cumprimentos

Sunil

Foi útil?

Solução

Dependendo do seu aplicativo, você poderá usar apenas o local da rede. Isso é refinado o suficiente para muitos serviços baseados em localização. Além disso, você não precisa se preocupar em sugar a bateria do usuário com rádio GPS.

Mas se você realmente quer um local o mais preciso possível, por que não ouvir os dois provedores? Você poderia usar o getLastKnownLocation() Método para a localização inicial. Então você pode usar o NETWORK_PROVIDER localização. Então, assim que você obtém uma correção do GPS_PROVIDER, você pode ignorar ou remover o ouvinte de rede.

Outras dicas

O GPS oferece melhor precisão do que o provedor de rede.

O provedor de rede é feito usando a triangulação de torres celulares e Wi -Fi.

Portanto, se você precisar imediatamente, comece com o "Last Location conhecido", depois mude para a rede, depois de ter a correção do GPS, comece a usá -lo.

Atenciosamente, Vinay

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top