Habilitando e desabilitando GPS (Location) no Android via linha de comando

Neste post irei demonstrar como habilitar e desabilitar o GPS do dispositivo Android via linha de comando utilizando um prompt adb shell. Este post é muito importante para desenvolvedores de produtos em modo quiosque, visto que, permite um controle maior sobre os providers que serão utilizados pelo dispositivo Android em sistemas embarcados.

Para desabilitar o GPS (location), abra um prompt adb shell e faça:

settings put secure location_providers_allowed -gps

Para habilitar novamente faça:

settings put secure location_providers_allowed +gps (em algumas versões do Android não utilize o +)

Uma dica muito importante é que você pode utilizar o mesmo recurso para definir o modo de configuração do recurso Location. As opções são:

  • Alta precisão (gps,network)
  • Economia de bateria (network)
  • Somente no dispositivo (gps)

Pra isto, utilize os comandos acima para adicionar gps e network. Veja que se você utilizar o exemplo abaixo irá configurar o modo para Somente no dispositivo.

settings put secure location_providers_allowed +gps
settings put secure location_providers_allowed -network

Em alguns dispositivos a sintaxe deve ser:

settings put secure location_providers_allowed network,gps para Alta Precisão

Utilize o comando settings get secure location_providers_allowed para obter os modos configurados:

Para que você possa executar esses tipos de ações, você deve garantir que seu dispositivo esteja rooteado corretamente e tenha o busybox instalado direto do Google Play. Lembre-se também que existem variações entre os diversos “brands” de Android e comandos que funcionam bem em alguns podem não funcionar em outros.

Atenção para não adicionar mais de uma vez um elemento no secure. Antes de adicioná-lo, verifique se ele não está adicionado no secure utilizando o comando settings get secure location_providers_allowed. Caso exista mais de uma ocorrência do elemento no secure, você deixará seu equipamento em estado inconsistente.

Paras aqueles leitores que não estão familiarizados com o uso do adb shell para executar comandos no prompt do Android OS, leiam o artigo http://www.frameworksystem.com/abrindo-um-adb-shell-terminal-no-android/.

 

Add Comment

Your email address will not be published. Required fields are marked *

Phone: (31) 3646-1612
Fax: (31) 3646-1614
Loja 01, Lourdes, Belo Horizonte/MG
Rua Rio de Janeiro, 1278