O GPSD está drenando a bateria no Android?

O GPSD é um serviço executado no seu sistema, cuja função é lidar com os GPS, AIS (sistemas de identificação) e outros sensores relacionados à navegação. A ferramenta é software livre e tem, em seu time de desenvolvedores ativos, o hacker e ativista Eric S. Raymond.
Talvez você queira uma resposta curta… mas eu vou responder da maneira mais completa possível.
Android consumo de bateria do GPSD
O daemon GPSD foi concebido para ser ativado e acessado por outras aplicações cliente, repassando a elas os dados recolhidos dos sensores.
Atualmente, o software pode ser encontrado em vários sistemas embarcados móveis (não apenas no seu bolso) — ele cuida do serviço de mapas nos dispositivos Android, está presente em drones, robôs, submarinos, carros driverless (sem motorista) etc.

Sua presença tem aumentado nas novas gerações de aeronaves, em sistemas marítimos de navegação, veículos e sistemas IFF militares.

Entre as aplicações que fazem uso do GPSD, incluem-se o pyGPS, gpsdrive, Kismet, GPSdrive, gpeGPS, roadmap, roadnav, navit, viking, tangogps, foxtrot, opencpn, obdgpslogger, geohist, LiveGPS, geoclue, qlandkartegt, gpredict, OpenCPN, gpsd-navigator, gpsd-ais-viewer, e o firefox/mozilla.
No que tange o sistema operacional Android (a partir da versão 4.0 e em alguns anteriores), o GPSD é usado para monitorar os sensores de posicionamento, embarcado nos dispositivos móveis. Todos os aplicativos Android “localizáveis” são, de certa maneira, aplicativos cliente do GPSD.
O projeto GPSD tem seu início registrado em 1998 e é muito bem conceituado. Seu código é tido como maduro e de alta qualidade e tem passado por auditorias minuciosas — não daria para esperar menos de softwares usados em aplicações militares.
As plataformas que suportam o GPSD são todos os Unixes de código aberto — o que inclui o Linux, a família BSD etc.
Diante disto, você vai encontrar a ferramenta em máquinas Linux (óbvio), Android e Apple OS X. Nestas últimas, o suporte (do projeto) é limitado — alguns drivers do OS X têm relatos de serem “bugados”, o que impede o GPSD de obter dados de alguns dispositivos seriais USB.

A página do projeto alerta que não provê qualquer suporte ao Windows — o conselho é arrume um sistema operacional melhor. Se você tem interesse em aprender mais sobre computação, este é um ótimo conselho.

O GPSD está drenando a bateria. Isto é possível?

Alguns usuários tem reclamado de que o daemon GPSD está promovendo um “consumo incomum” das baterias de seus dispositivos. Há posts com esta informação no fórum oficial de usuários do GPSD.
Segundo Eric S. Raymond, é possível imaginar várias razões para isto acontecer se o aplicativo cliente que acessa o GPSD estiver se comportando mal.

O consumo de bateria do GPSD no Android.
O consumo de bateria do GPSD no Android.

O que realmente está acontecendo, segue nas linhas abaixo, de acordo com a explicação de Raymond.
O uso do GPS é conhecido por consumir bastante energia em qualquer dispositivo. Normalmente, o Android economiza calculando sua localização com base na força com que o sinal da torre (3G, LTE, 4G etc,) chega ao seu aparelho. Esta é uma informação que ele está sempre obtendo, de maneira que quase não precisa fazer uso do sensor do GPS.
Para obter informações mais precisas, contudo, aplicativos como o Google Maps podem requisitar uma “localização detalhada” — neste caso, o ícone do GPS pode aparecer na barra de status.
Ao fazer uma requisição por uma localização mais precisa, o GPSD é ativado para buscar e interpretar os dados do(s) satélite(s).
O Android captura os dados do GPSD e os disponibiliza a todos os outros aplicativos do sistema, através de uma API Java.

O Android, por si, não mantém o sensor do GPS ligado o tempo inteiro. Além disto, o daemon GPSD é econômico no consumo de energia — tendo já sido testado em sistemas com pouca potência.

Raymond esclarece que não há motivo para o sistema de coleta de informações do GPS gastar muitos ciclos de processamento, uma vez que a taxa de dados recebida não é elevada.

Como resolver o problema

Até aqui fica claro, apesar do relatório do sistema Android, que o GPSD não é a origem do problema.
O que você precisa fazer é encontrar o aplicativo que está pedindo informações detalhadas e, ao mesmo, tempo rodando nos bastidores (background).
Desinstale este aplicativo defeituoso e o problema vai embora junto.
Há relatos de que no Samsung Galaxy S3, um dos aplicativos defeituosos é o Remote Location Service (Serviço de Localização Remota). Se não for possível remover o aplicativo (este ou qualquer outro), saiba como é possível desabilitá-lo.
De forma resumida, você precisa encontrar o aplicativo que está chamando o GPSD o tempo inteiro, sem necessidade, e desinstalá-lo, para resolver o problema.

Referências

Conheça os sensores do seu smartphone: https://elias.praciano.com/2015/02/conheca-os-sensores-do-seu-smartphone-ou-tablet/.
Página do projeto no Savannah: https://savannah.nongnu.org/projects/gpsd/.
Página oficial do projeto: http://catb.org/gpsd/.
Resposta completa de Raymond: http://esr.ibiblio.org/?p=4886.

Como criar rotinas de exercícios com o RunKeeper

O RunKeeper é um dos aplicativos (pra correr) de monitoramento de atividades mais completos, mesmo na versão básica (gratuita). Além de contar com uma “mini rede social” entre seus clientes, tem uma série de planos de treinamento, com rotinas de exercícios, que ajudam o atleta iniciante a alcançar seus objetivos de maneira mais eficiente.
Além de poder contar com os planos preexistentes, é possível montar o seu próprio ou, mais simplificadamente, a sua própria série de exercícios.

ADVERTÊNCIA

Eu não sou profissional de educação física. Este texto tem o objetivo de ensinar a usar uma ferramenta.
Não faça besteiras, portanto – cuide do seu corpo, evite contusões e outros problemas. Faça exercícios físicos sempre sob a supervisão de um profissional com formação adequada.

Como sempre, clique nas imagens para obter maiores informações e veja o vídeo explicativo no final – ele ajuda a explicar melhor o artigo.

Mais sobre o RunKeeper

As séries de treinamento padrão

RunKeeper ativar GPSNa tela principal do aplicativo, é possível fazer diversas seleções antes de iniciar a atividade.
Usar uma das diferentes rotinas de exercícios é como ter à disposição um treinador que vai ditando as séries pra você:
– “Agora, 2 minutos caminhando!”
– “1 km de corrida, agora!”
Em ruas muito movimentadas (e dependendo do pavimento) pode ser difícil ouvir os avisos sonoros – por isto o uso de fones de ouvido é recomendado.
Para chegar ao módulo de criação ou seleção de rotinas de treinamento, toque na opção rotina de exercícios (observe a figura do lado), em seguida, toque em exercícios personalizados, na parte superior da tela.
A tela dos Exercícios Personalizados vem dividida em duas partes:

  • Uma que permite selecionar séries já prontas
  • e outra que permite personalizar rotinas de exercícios através da criação de novas rotinas de exercícios

RunKeeper Rotinas de exercíciosAlgumas destas opções são voltadas para treinos mais leves, outras para treinos mais puxados. São elaboradas por profissionais educadores físicos e corredores profissionais contratados da própria empresa. É seguro fazer uso destas rotinas prontas de exercícios.
O problema, aqui, é que estas rotinas de exercício padrão usam um sistema métrico ultrapassado (a insistência dos norte-americanos em usar milhas é um coisa chata… ). 😉
No próximo tópico, vou mostrar como alterar ou excluir as rotinas.

Veja como alterar as rotinas de exercícios no RunKeeper

Alterar rotinas de exercícios no RunKeeperO RunKeeper permite alterar todas as suas rotinas de exercícios.
Há um botão grande e verde, no topo que que permite selecionar rotina de exercícios e, se quiser, começar a praticar.
Se você quiser alterar esta rotina, deve rolar a tela para baixo, até o rodapé e selecionar o pequeno botão azul Editar rotina de exercícios.
Na nova tela é possível alterar:

  • o nome da rotina de exercícios;
  • cada uma de suas séries (elas podem ser excluídas, uma a uma, também);
  • é possível adicionar uma nova série – ou intervalo;
  • alterar a quantidade de vezes em que toda a rotina irá se repetir;
  • criar um intervalo para aquecimento e/ou outro para desacelerar – um tempo para reduzir gradativamente seu ritmo, antes de cessar a atividade.

RunKeeper Alterar intervalos de exercíciosNa tela Editar intervalo é possível alterar:

  1. Alterar o ritmo de intervalo
    • devagar;
    • estável;
    • ou rápido
  2. Tipo de intervalo
    • Distância
    • Tempo
  3. O tamanho do intervalo (em minutos ou em distância)

RunKeeper personalizar treinamentoNa parte inferior da tela, você pode escolher a quantidade de repetições.
Em seguida, pode adicionar um tempo, em minutos, para aquecimento antes de começar a rotina de exercícios e outro tempo, ao final, para reduzir gradativamente o seu ritmo.
Ao finalizar, grave as alterações ou as exclua. O botão cancelar volta à tela principal “como se nada tivesse acontecido”.
Desta maneira, você pode ter séries diferenciadas pra cada dia da semana, se quiser.

Vídeo tutorial

Incluí um vídeo que ajuda a entender melhor o processo.

Conclusão

A possibilidade de usar rotinas de exercícios prontas, elaboradas por pessoal qualificado é um atrativo no RunKeeper.
Alterar ou criar várias rotinas de exercícios próprias, personalizadas para as suas necessidades é muito bom. As rotinas, para iniciante, presentes no RunKeeper podem não satisfazer suas necessidades por muito tempo – sem falar nas unidades de medida que acho “mandatório” alterar no aplicativo para unidades “decentes”.
Sem querer ser repetitivo ( e já sendo! ), embora você possa fazer tudo isto sozinho, recomendo consultar um profissional educador físico, para obter o melhor rendimento nas suas atividades e evitar lesões.
Bom treino!

Runtastic, passo a passo

O Runtastic é um software de monitoramento de atividades físicas, que contempla mais de 50 tipos de esportes, na sua versão básica. Vou mostrar como começar a brincadeira com ele, hoje mesmo, se quiser.
Eu já escrevi anteriormente sobre o RunKeeper, um aplicativo da mesma categoria e tão bom quanto este.
Runtastic corrida GPS com músicaAmbos permitem monitoramento de suas atividades físicas tanto indoor quanto ao ar livre – onde você pode contar com o GPS do seu dispositivo para traçar com o satélite o seu percurso.
Se você tiver problemas com o GPS, sugiro a leitura deste artigo – onde relato alguns procedimentos que podem ajudar a ter um desempenho melhor do rádio do seu aparelho.
Veja, a seguir, como começar a usar o app e clique nas imagens para ver mais detalhes.

Conectar

Runtastic login google facebookUm dos objetivos das pessoas que usam o runtastic é postar nas redes sociais o seu desempenho nas atividades físicas – mas isto não é obrigatório. Ao final das atividades, você terá a opção de fazer isto ou não.
Atualmente, você tem 4 opções para entrar no Runtastic, como você pode ver na figura à direita:

  • Google Plus;
  • Facebook;
  • Pelo Runtastic – se você tiver uma conta no Runtastic (é fácil criar uma no site), você pode usar estes dados para entrar. Eu recomendo esta opção – principalmente se você não tiver interesse algum em postar suas atividades nas redes sociais (você pode mudar isto depois);
  • “Lembre-me mais tarde” – pode ser usado para quem tem pressa em começar a usar logo o aplicativo. É uma péssima ideia, por que as suas atividades não serão enviadas pros servidores do Runtastic e, portanto, não irão compor o seu histórico. Evite isto.

runtastic screenshot informações pessoaisDependendo da sua opção, uma tela poderá aparecer pedindo algumas informações a mais sobre você. Forneça-as para seguir em frente.
Informações sobre a sua altura e seu peso, permitirão compor a equação para calcular a quantidade de calorias dispendidas a cada atividade.
Ao alterar, periodicamente as informações sobre o seu peso, você constitui uma base de dados sobre o seu desempenho. Este histórico pode ser acessado no site do Runtastic.

Dando início ao treinamento

Uma vez dentro do app, a tela principal permite já começar a monitorar as suas atividades.
Runtastic screenshot tela inicial No canto superior à esquerda, há um botão que dá pro menu de configurações genéricas. À esquerda, o botão com uma nota musical, permite selecionar a trilha sonora da sua atividade.
Na parte central da tela do aplicativo estão 3 botões importantes:

  • botão de seleção de atividade – corrida, caminhada, ciclismo etc. São mais de 50 atividades possíveis;
  • O verde e grande, para iniciar a atividade física;
  • o terceiro botão permite selecionar o tipo de treinamento – Quem vai fazer atividade indoor, sem o uso do GPS (esteira, por exemplo) deve selecionar, aqui, a opção “entrada manual” e fornecer os dados referentes ao treino.

Abaixo dos botões, há um mapa que irá acompanhar o seu deslocamento.

Durante o treinamento

Após o início da atividade, os botões centrais mudam, para evitar pressionamento acidental. A qualquer momento, contudo, você pode pausar o monitoramento, para atender a uma ligação, amarrar o tênis o jogar conversa fora (no meio do treino?! 😮 ).

finalizando e compartilhando a atividade

Runtastic screenshot resumo da atividadeAo finalizar o seu treino, toque no botão parar.
O aplicativo irá iniciar um sumário “oral”. O idioma deste sumário depende de suas configurações.
Enquanto o sumário é dado,

  • informe como você se sentiu, selecionando um dos 5 emoticons disponíveis;
  • o tipo de caminho sobre o qual você caminhou, correu;
  • o clima;

Clique em Concluir, no canto superior direito, quando terminar de informar os dados nesta tela.
Aguarde o upload pros servidores do Runtastic.

Compartilhamento

Runtastic compartilhar facebook google twitterEu tenho certeza de que muita gente ama esta parte. Como eu disse, lá no começo, ela é opcional. Quem não deseja divulgar informações sobre o seu treino, não precisa fazê-lo.
Na primeira vez, você vai precisar se logar e autorizar o aplicativo dentro da rede social correspondente a postar em seu nome as suas atividades físicas.

Bom treino!

Como resolver problemas com o GPS no RunKeeper

O RunKeeper é um aplicativo (app) de monitoramento de suas atividades físicas. Similar a outros, como Runtastic, Nike+, Endomondo etc. As dicas dadas aqui podem ser aproveitadas, sem problemas, em outros apps desta mesma categoria.

O GPS é do seu celular

runkeeper-test-android-peteÉ importante entender que o software de monitoramento recebe informações do software que controla o hardware do GPS no seu aparelho. Aparelhos diferentes, têm softwares e hardwares relacionados ao Sistema de Posicionamento Global (GPS) diferentes. Alguns têm um conjunto de melhor qualidade, outros não.
Ainda assim, tudo pode e deve funcionar bem e nós vamos abordar alguns dos problemas mais comuns e que podem ser resolvidos de forma simples.

Ative o GPS primeiro

Ativar GPS no RunKeeperAntes de iniciar o aplicativo de monitoramento, ligue o GPS do seu aparelho. Nada impede que você faça o contrário. Mas é uma forma mais segura de permitir que o aplicativo se conecte ao hardware do sistema de posicionamento via satélite.

Tenha paciência

A conexão com o satélite demora um pouco. Esta demora pode variar em função do tipo de hardware que você tem instalado em seu smartphone. Ou seja, a marca e o modelo do seu aparelho pode influenciar.

Antecedência

Experimente ativar o GPS antes de sair de casa para ir treinar. Você pode ligar o RunKeeper também. Quando você chegar ao local do treino, tudo já estará sincronizado e funcionando – bastará tocar o botão “iniciar a atividade”.
Se você vai a pé até o local onde você pratica suas atividades, melhor ainda. Ao ar livre, durante a caminhada, o GPS vai funcionar melhor.

Concluindo

Mais sobre o RunKeeper

Evite ligar o GPS e o RunKeeper “em cima da hora”, pouco antes do exercício. Faça isto sempre com alguns minutos de antecedência à sua atividade.
Tenha um bom treino!

RunKeeper: Configuração básica no celular

Vamos abordar, neste post, as configurações disponíveis no aplicativo RunKeeper para smartphones. É bom fazer alguns ajustes, antes de começar a usá-lo – tais como a unidade de medida, a frequência do feedback sonoro etc.
RunKeeper botão de configuraçãoClique no ícone de configuração, no canto superior direito, na tela principal, para chegar ao menu.
O menu de configuração é composto por mais de 20 itens. Nem todos estão relacionados à configuração do aplicativo. Vamos ver os principais.

Mais sobre o RunKeeper

Unidades de medida

RunKeeper Unidades de Medida km ou MilhasPor ser desenvolvido em Boston (EUA), a unidade de medida da distância percorrida padrão do aplicativo é a milha. Vamos mudar para um sistema decente.
Isto pode ser alterado no menu “Unidades de distância” (distance units, na versão em inglês). Escolha Km, dentro deste menu.

Sinais de Áudio

Aqui podemos configurar o relatório periódico (feedback) de áudio que o aplicativo fornece durante as atividades.
No menu “Cronometragem de áudio”, você pode escolher se deseja disparar o sinal de áudio após o decurso de um intervalo de tempo (Por Tempo) e/ou de uma distância percorrida (Por Distância).
Por exemplo, a cada 15 minutos de atividade, o aplicativo dispara o sinal de áudio que informa (com voz humana) a distância percorrida, o ritmo do treino etc.

Ajuste do sinal de áudio por tempo

  • Selecione “Sinais de áudio”, no menu de configurações;
  • Selecione “Por Tempo”;
  • Escolha o intervalo que julgar adequado;
  • Escolha “Nenhum” se desejar desativar este sinal.

Ajuste do sinal de áudio por distância percorrida

  • Dentro de “Sinais de áudio”, selecione “Por Distância”;
  • Escolha um intervalo adequado à sua necessidade;
  • Escolha “Nenhum” para desativar este sinal

Seleção das informações

Logo abaixo das trigger options, ou seja, as condições em que o relatório audível será “disparado”, há uma lista de opções de informações que você pode escolher. Entre as principais, estão:RunKeeper Configurar sinais de áudio

  • Tempo;
  • Distância percorrida;
  • Ritmo médio do treino;
  • Ritmo/velocidade da série atual – para quem utiliza uma rotina predefinida de exercícios, com várias séries, esta opção dá o feedback de cada uma destas séries;
  • etc.

Há opções de medição do batimento cardíaco (Heart Rate), mas será necessário ter um acessório medidor para recolher estes dados. O próprio site do RunKeeper vende alguns modelos de acessórios compatíveis.

Tela Primária

RunKeeper tela principal
Aqui se escolhe o que deverá ser mostrado no painel principal – se o ritmo ou a velocidade no treino.
O ritmo (pace) é o tempo (em minutos) que você leva para completar um determinado percurso (em quilômetros).

Outros itens

A maioria dos itens do menu de configuração, se não são autoexplicativos, são facilmente dedutíveis ou, através da tentativa e erro, rapidamente um usuário consegue descobrir sua aplicabilidade. Acho interessante, portanto, abordar apenas mais dois itens.

Pausa automática

Liga/desliga a pausa automática. Quando o programa “percebe” que você está parado, ele pausa o monitoramento. Pode ser muito útil em caso de ter que atender a um telefonema ou, distraidamente, parar para conversar com alguém. A pausa automática não permite ao aplicativo “contabilizar” o tempo que você saiu da atividade.

Configurações de compartilhamento

Esta seção trata de um dos recursos mais queridos nos aplicativos de monitoramento de atividades. Selecione quem pode ver suas atividades, seus mapas e conecte o aplicativo ao Twitter e ao Facebook.
Dica: O site do RunKeeper permite conectar o aplicativo ao Foursquare e você pode ganhar medalhas (badges) relativas às atividades.