Projeto independente · Android + Android Auto

Letras que acompanham o que estiver tocando.

Auto Lyrics detecta a sessão de mídia ativa no celular, encontra letras sincronizadas e acompanha a música tanto no Android quanto no Android Auto — sem login no Spotify.

Protótipo privado · testes automatizados aprovados · validação no dispositivo pendente

Auto Lyrics SINCRONIZADA

Night Drive

Sessão de demonstração

City lights in the rear-view

Every mile becomes a memory

We keep moving with the music

Letras 2:14

Night Drive · Sessão de demonstração

Every mile becomes a memory We keep moving with the music
39 testes unitários
74,8 MB APK de debug atual
0 contas ou chaves de API
2 fontes de letras

O problema

O carro tem uma tela. A letra fica no celular.

O Spotify mostra letras no celular, mas não no Android Auto. Eu queria que um passageiro pudesse acompanhar a música na tela do carro sem entrar em outro serviço nem trocar de player.

A restrição definiu o produto: detectar o que já está tocando, buscar a melhor letra sincronizada disponível e manter o sincronismo durante trocas de faixa, pausas e avanços.

Demo da interface

Acompanhe uma sessão nas duas telas.

Simulação no navegador · texto original de demonstração

TOCANDO AGORA Night Drive Sessão de demonstração
SINCRONIZADA

Letras Night Drive
0:18

Status do lançamento

O código está pronto para o teste no dispositivo.

Status transparente · julho de 2026

Aprovado

Verificações automatizadas

  • 39 testes unitários cobrem parsing, sincronização, cache, limpeza de metadados e identidade da faixa.
  • O lint do Android passa.
  • O APK de debug é gerado com sucesso.
Próximo

Teste no celular

  • Conceder acesso às notificações e confirmar a detecção da reprodução ativa.
  • Verificar troca de faixa, pausa, avanço, letras em cache e estados sem letra.
  • Medir o desvio de sincronização num dispositivo físico.
Próximo

Teste no Android Auto

  • Confirmar a presença no launcher após ativar o modo de desenvolvedor e fontes desconhecidas.
  • Testar atualização de linhas, reconexões e controles de reprodução na central multimídia.
  • Manter o app privado até resolver o licenciamento e a distribuição das letras.

A construção

Um pipeline pequeno com bordas difíceis.

Detectar · buscar · sincronizar · renderizar

  1. 01

    Detectar a faixa ativa

    Um serviço que escuta notificações descobre a sessão de mídia ativa e lê metadados da faixa, posição de reprodução, estado de pausa e avanços.

  2. 02

    Encontrar e armazenar letras

    SyncLRC é a fonte principal e LRCLIB é a alternativa. A correspondência exata evolui para metadados limpos e busca; falhas são armazenadas para que o app não repita requisições sem saída.

  3. 03

    Manter as duas superfícies sincronizadas

    Um motor de tempo testável mapeia a posição da reprodução para a linha e a palavra atuais. O celular renderiza uma tela completa de letras, enquanto o Android Auto usa sua interface de mídia restrita.

Minha contribuição

Parti de uma ideia funcional e tornei o produto mais robusto.

A base é o projeto Auto Lyrics, licenciado sob MIT. Tratei o fork como um exercício de produto: entender o sistema, preservar o que funcionava e investir onde confiabilidade e usabilidade eram mais frágeis.

  • Extraí tempo, interpolação e identidade da faixa para componentes testáveis.
  • Adicionei 39 testes unitários para parsing, sincronização, limpeza de metadados e cache.
  • Adicionei cache de resultados negativos e suporte ao offset padrão de LRC.
  • Construí um fluxo guiado de três etapas para a instalação por sideload no Android Auto.

Julgamento de produto

Um protótipo útil não é automaticamente um produto distribuível.

O app foi pensado para uso por passageiros e precisa respeitar as restrições de segurança do Android Auto. O sideload também exige modo de desenvolvedor e fontes desconhecidas, então a qualidade da configuração importa tanto quanto a sincronização.

Não ofereço um APK público: as fontes comunitárias de letras atuais são adequadas para prototipagem privada, não para um serviço comercial público. Um lançamento amplo exigiria uma fonte licenciada de letras e um caminho de distribuição aprovado pelo Android Auto.

Construa comigo

Tem uma ideia de produto com restrições que vale prototipar?

Ajudo equipes a transformar perguntas ambíguas de produto em algo concreto o suficiente para testar, avaliar e decidir.

Conversar sobre um projeto