Digital Signage

Manual de instalação do Player

Como instalar o aplicativo Digital Signage Player em uma TV TCL com Android TV e em um Fire TV Stick, ativar a TV no painel e deixá-la exibindo as propagandas.

Importante: o Player não vem da Google Play nem da Amazon Appstore. Ele é um arquivo APK que você baixa do nosso site e instala direto na TV. Depois de instalado, ele se atualiza sozinho pelo mesmo site (veja a seção 6).

Endereços que você vai usar

O quê Endereço
Painel (onde você gerencia as TVs) https://signage-painel.pages.dev
Download do Player (lista de versões) https://signage-downloads.pages.dev
Atalho curto para baixar a versão mais recente signage-downloads.pages.dev/d

1. Antes de começar

Você vai precisar de:

Como o processo funciona, em 4 passos:

  1. Instalar o Player na TV.
  2. Abrir o Player: ele mostra na tela um código de 6 letras/números.
  3. No painel: Dispositivos → Adicionar dispositivo e digitar o código.
  4. No painel: enviar as mídias, montar uma playlist e escolhê-la para a TV.

Dois caminhos para instalar:

Método A — Downloader Método B — ADB (com PC)
Precisa de computador Não Sim
Dificuldade Fácil Média
Permite liberar todas as permissões Em parte (depende dos menus da TV) Sim, todas
Recomendado para A primeira instalação, TVs de clientes Quando algum menu não existir na TV

Os nomes dos menus mudam conforme o modelo e a versão do Android/Fire OS. Os caminhos abaixo são os típicos; se o seu for um pouco diferente, procure pelo nome da opção (por exemplo, "Fontes desconhecidas" ou "Instalar apps desconhecidos").


2. TV TCL com Android TV

2.1 Ligar as opções de desenvolvedor (só se for usar o método B)

  1. Na tela inicial, abra Configurações (ícone de engrenagem).
  2. Vá em Preferências do dispositivo → Sobre.
  3. Role até Compilação (às vezes "Build" ou "Versão do SO") e aperte OK 7 vezes seguidas. Aparece "Agora você é um desenvolvedor".
  4. Volte um nível. Surgiu Opções do desenvolvedor. Entre e ligue Depuração USB. Se existir Depuração de rede (ou "ADB por rede"), ligue também.

2.2 Método A — instalar com o app Downloader (sem computador)

Passo 1 — Instale o Downloader na TV.

  1. Na tela inicial, abra a Google Play Store da TV.
  2. Pesquise por Downloader (ícone laranja, do desenvolvedor AFTVnews).
  3. Clique em Instalar e depois em Abrir. Na primeira abertura ele pede permissão para acessar arquivos: Permitir.

Passo 2 — Deixe o Downloader instalar apps de fora da loja.

  1. Configurações → Preferências do dispositivo → Segurança e restrições → Fontes desconhecidas (em algumas TVs: Configurações → Apps → Acesso especial → Instalar apps desconhecidos).
  2. Ligue a chave do Downloader.

Se você pular este passo, a TV avisa na hora da instalação e oferece um atalho para essa tela.

Passo 3 — Baixe o Player.

  1. Abra o Downloader.
  2. No campo de endereço, digite exatamente: signage-downloads.pages.dev/d e escolha Ir (Go).
  3. O arquivo player-….apk é baixado (cerca de 6 MB).
  4. Quando terminar, clique em Instalar.
  5. Ao final, escolha Concluído (não precisa abrir ainda) e, se o Downloader perguntar se quer apagar o arquivo, escolha Excluir para liberar espaço.

Digitar com o controle é lento. Dica: o app Google Home no celular, ou o controle remoto virtual do Android TV, permite digitar com o teclado do celular.

2.3 Permissões do Player (importante)

Depois de instalado, o Player precisa de duas permissões que o Android não concede sozinho. Sem elas ele funciona, mas perde dois recursos:

Permissão Para quê Sem ela
Instalar apps desconhecidos Atualizar o Player sozinho O Player não se atualiza; você precisa reinstalar à mão
Exibir sobre outros apps Abrir sozinho quando a TV liga (e depois de cada atualização) Depois de ligar a TV você precisa abrir o Player manualmente

Como liberar pelos menus da TV:

  1. Configurações → Apps → Acesso especial (ou "Acesso especial de apps").
  2. Entre em Instalar apps desconhecidos, escolha Digital Signage Player e ligue.
  3. Volte e entre em Exibir sobre outros apps, escolha Digital Signage Player e ligue.

Se a sua TV não tiver esses menus (acontece em algumas TCL), use o método B abaixo: dois comandos resolvem.

2.4 Método B — instalar com o computador (ADB)

Este método funciona em qualquer TV Android e libera todas as permissões.

Passo 1 — Prepare o computador (uma vez só).

  1. Baixe o SDK Platform‑Tools (que traz o adb) no site oficial: https://developer.android.com/tools/releases/platform-tools.
  2. Extraia o ZIP em uma pasta, por exemplo C:\platform-tools.
  3. Abra o PowerShell nessa pasta (na pasta: segure Shift, clique com o botão direito num espaço vazio e escolha "Abrir janela do PowerShell aqui").

Passo 2 — Descubra o endereço da TV.

Na TV: Configurações → Rede e Internet → toque na rede conectada → anote o Endereço IP (algo como 192.168.0.45).

Passo 3 — Baixe o APK no computador.

Abra https://signage-downloads.pages.dev no navegador, clique em Baixar APK e salve na pasta C:\platform-tools.

Passo 4 — Conecte e instale. Troque IP_DA_TV e o nome do arquivo:

.\adb connect IP_DA_TV:5555
.\adb install -r player-0.3.0.apk

A TV mostra uma janela "Permitir depuração USB?" com o código do seu computador: marque Sempre permitir e escolha OK. Rode o adb connect de novo, se for preciso.

Se aparecer Success, está instalado.

Passo 5 — Libere as permissões e abra o app.

.\adb shell appops set com.digitalsignage.player REQUEST_INSTALL_PACKAGES allow
.\adb shell appops set com.digitalsignage.player SYSTEM_ALERT_WINDOW allow
.\adb shell am start -n com.digitalsignage.player/.MainActivity

2.5 Ativar a TV e exibir as propagandas

  1. A TV mostra "Código de ativação" com 6 caracteres grandes. Anote.
  2. No celular ou computador, abra https://signage-painel.pages.dev e entre.
  3. Vá em Dispositivos → Adicionar dispositivo.
  4. Digite o código, dê um nome (ex.: "TV Recepção"), informe o local e clique em Ativar dispositivo.
  5. Em Biblioteca, envie imagens (JPG, PNG, WEBP) e vídeos (MP4).
  6. Em Playlists → Nova playlist, adicione as mídias, ajuste a duração de cada imagem e clique em Publicar alterações.
  7. Em Dispositivos, na linha da TV, escolha a playlist na coluna Playlist.
  8. Em até uns 30 a 60 segundos a TV baixa o conteúdo e começa a exibir.

Na primeira vez do dia, o painel pode demorar até 1 minuto para responder (o servidor "acorda"). É normal no plano gratuito. Isso nunca interrompe a TV: ela continua exibindo o que já baixou.

2.6 Deixar a TV pronta para exibir o dia todo

Estas são configurações da própria TV, não do Player:

2.7 Testar se ficou tudo certo

Faça nesta ordem e marque:


3. Fire TV Stick (Amazon)

O Fire TV Stick usa o Fire OS, baseado em Android. O Player funciona nele, mas o início automático ao ligar depende da versão do Fire OS e ainda não foi medido num aparelho real (veja a seção 3.5).

3.1 Preparar o Fire TV Stick

  1. Configurações → Meu Fire TV → Sobre. Selecione o nome do aparelho ("Fire TV Stick") e aperte OK 7 vezes. Aparece "Você agora é um desenvolvedor".
  2. Volte um nível: surgiu Opções do desenvolvedor. Entre.
  3. Ligue Depuração ADB (necessária só para o método B).
  4. Ligue Instalar apps desconhecidos (em versões antigas chama-se Apps de fontes desconhecidas). Nas versões novas, a chave é por aplicativo e você a liga no passo 3.2.

3.2 Método A — instalar com o app Downloader (sem computador)

Passo 1 — Instale o Downloader.

  1. Na tela inicial, escolha Buscar (lupa) e digite Downloader.
  2. Escolha o app laranja do AFTVnews e clique em Baixar/Obter. Depois Abrir.
  3. Permita o acesso a arquivos quando pedir.

Passo 2 — Deixe o Downloader instalar apps.

Configurações → Meu Fire TV → Opções do desenvolvedor → Instalar apps desconhecidos → ligue Downloader.

Passo 3 — Baixe o Player.

  1. Abra o Downloader, vá em Início e, no campo de URL, digite: signage-downloads.pages.dev/d.
  2. Escolha Ir. O arquivo é baixado.
  3. Clique em Instalar e, no final, em Concluído.
  4. Quando o Downloader perguntar sobre o arquivo, escolha Excluir.

3.3 Onde fica o app depois de instalado

O Fire TV não coloca apps de fora da loja na tela inicial. Para abrir:

Configurações → Aplicativos → Gerenciar aplicativos instalados → Digital Signage Player → Iniciar aplicativo.

Dica: nessa mesma tela, depois de abrir o app uma vez, ele passa a aparecer no final da lista Seus aplicativos. Para movê-lo para o começo, selecione o ícone, aperte o botão menu (≡) do controle e escolha Mover.

3.4 Permissão para atualizar sozinho

Volte em Configurações → Meu Fire TV → Opções do desenvolvedor → Instalar apps desconhecidos e ligue também Digital Signage Player. Sem isso o Player não consegue se atualizar.

3.5 Abrir sozinho ao ligar

.\adb connect IP_DO_FIRE_TV:5555
.\adb shell appops set com.digitalsignage.player SYSTEM_ALERT_WINDOW allow

(O IP fica em Configurações → Meu Fire TV → Sobre → Rede.)

Se, mesmo assim, o Player não abrir sozinho no seu Fire TV Stick, anote o modelo e a versão do Fire OS (em Sobre) e avise a equipe: dá para tratar por outros caminhos.

3.6 Método B — instalar com o computador (ADB)

Idêntico ao da TCL (seção 2.4). A única diferença é o IP: use o do Fire TV (Configurações → Meu Fire TV → Sobre → Rede). O Fire TV também pede para autorizar o computador na primeira vez ("Permitir depuração USB?").

3.7 Ativar e testar

Igual à TCL: siga a seção 2.5 e a seção 2.7.

3.8 Cuidados específicos do Fire TV Stick


4. Conferir se o arquivo é autêntico (opcional, recomendado)

Na página de downloads, abaixo de cada versão, aparece o SHA‑256 do arquivo. Para conferir no Windows, depois de baixar:

certutil -hashfile player-0.3.0.apk SHA256

O resultado precisa ser idêntico ao da página. O Android também recusa qualquer atualização que não venha assinada com a mesma chave das versões anteriores, então ninguém consegue trocar o Player por outro aplicativo.


5. Comandos úteis (ADB)

Todos começam com .\adb (troque IP_DA_TV pelo endereço da sua TV e rode .\adb connect IP_DA_TV:5555 antes):

O que fazer Comando
Ver se a TV está conectada .\adb devices
Instalar / atualizar à mão .\adb install -r player-0.3.0.apk
Abrir o Player .\adb shell am start -n com.digitalsignage.player/.MainActivity
Apontar para outro servidor .\adb shell am start -n com.digitalsignage.player/.MainActivity --es server_url https://meu-servidor
Voltar ao estado de fábrica (pede novo código) .\adb shell am start -n com.digitalsignage.player/.MainActivity --ez reset true
Desligar a atualização automática .\adb shell am start -n com.digitalsignage.player/.MainActivity --ez auto_update false
Só atualizar em um horário (ex.: de madrugada) .\adb shell am start -n com.digitalsignage.player/.MainActivity --es update_window "02:00-05:00"
Atualizar a qualquer hora de novo .\adb shell am start -n com.digitalsignage.player/.MainActivity --es update_window ""
Ver a versão instalada .\adb shell dumpsys package com.digitalsignage.player | findstr versionName
Desinstalar .\adb shell pm uninstall com.digitalsignage.player
Capturar a tela da TV .\adb exec-out screencap -p > tv.png

6. Atualização automática

Como funciona: a cada 6 horas (e ~1,5 minuto depois de abrir), o Player consulta signage-downloads.pages.dev/latest.json. Se houver uma versão mais nova, ele baixa, confere o SHA‑256 e entrega ao instalador do Android. Ele nunca instala um arquivo que não bata com o SHA‑256 publicado, nem uma versão igual ou mais antiga.

O que você vai ver na TV: quando a nova versão estiver pronta, o Android abre uma janela sobre a propaganda:

Digital Signage Player — Do you want to update this app?   [ Update ] [ Cancel ]

Limitação importante, medida na prática: no Android 14 (testado em um emulador de Android TV) o sistema sempre pede essa confirmação, mesmo quando o Player já é o instalador do app e mesmo com ele em segundo plano. Ou seja, alguém precisa apertar OK na TV. Para evitar propagandas cobertas por tempo indeterminado:

Como saber a versão de cada TV: no painel, em Dispositivos, abaixo do "Último contato" aparece a versão (por exemplo v0.3.0).

Se a TV não atualiza: a mensagem de diagnóstico aparece no rodapé da tela de aviso do Player (por exemplo: "falta liberar instalar apps desconhecidos"). Veja também a tabela abaixo.


7. Solução de problemas

Problema O que fazer
"App não instalado" / "Conflito com o pacote existente" Já existe uma versão assinada com outra chave (por exemplo, uma versão de teste). Desinstale o Player (Configurações → Apps → Digital Signage Player → Desinstalar) e instale de novo.
A TV não deixa instalar Falta liberar "Fontes desconhecidas / Instalar apps desconhecidos" para o Downloader (seção 2.2 passo 2 ou 3.2 passo 2).
"Sem conexão com o servidor" Confira a internet da TV. Se o servidor estava "dormindo", espere ~1 minuto: o Player tenta de novo sozinho. Aperte OK no controle para conferir/alterar o endereço do servidor.
O código de ativação não aparece A tela diz "Iniciando…" ou "Sem conexão": é problema de internet. Aguarde e confira o Wi‑Fi.
O código aparece, mas o painel diz "inválido ou expirado" O código vale por 24 horas e é de uso único. Reinicie o Player (ou use --ez reset true) para gerar um novo.
A TV mostra "Aguardando conteúdo" Ela está ativa, mas sem playlist. No painel, escolha uma playlist para ela na coluna Playlist.
Vídeo não toca Use MP4 com vídeo H.264. Outros formatos (MOV, AVI, MKV, HEVC) podem não funcionar.
A imagem fica cortada O Player mostra a imagem inteira (sem cortar). Prefira arquivos 16:9 (1920×1080).
A tela apaga ou aparece o protetor de tela Desative o protetor de tela e o desligamento automático da TV (seção 2.6/3.8).
O Player não abre sozinho ao ligar Falta a permissão "Exibir sobre outros apps" (seção 2.3) ou, no Fire TV, o comando da seção 3.5.
Atualização não aparece Falta "Instalar apps desconhecidos" para o Player (seção 2.3 / 3.4). Confira também se o horário não está restrito (update_window).
A TV aparece Offline no painel, mas está exibindo Normal por até ~2 minutos depois de uma queda de internet. Se persistir, verifique o Wi‑Fi.
O painel demora ~1 minuto na primeira vez O servidor gratuito "dorme" sem uso. É só esperar. Não afeta as TVs.

8. Desinstalar ou redefinir


9. Para quem publica novas versões

Quem mantém o projeto publica uma versão nova com um único comando, no computador de desenvolvimento (a chave de assinatura fica em C:\Users\<usuário>\.signage; guarde um backup dela: sem a mesma chave, as TVs não aceitam atualização):

node scripts/release-player.mjs --notes "O que mudou nesta versão"

Isso compila, assina, publica na lista de downloads e atualiza o latest.json que as TVs consultam. Antes, aumente o versionCode e o versionName em player/app/build.gradle.kts.