JumPHP runtime no Android: instalar a app
Num telemóvel, uma página web não consegue chegar à sua própria rede (Wi-Fi de casa, VPN, um servidor que só aceita o seu endereço). O JumPHP runtime para Android é uma pequena app que o faz para as aplicações JumPHP abertas no navegador, apenas com a sua permissão. Não está no Google Play: instala você mesmo um ficheiro .apk. Esta página explica cada caixa que o Android lhe pede para marcar.
O Android diz que pode ser nocivo? Não é um vírus
O navegador, o Android ou o Google Play Protect podem dizer que o ficheiro «pode danificar o dispositivo», «raramente é transferido» ou «vem de uma origem desconhecida». É normal e esperado: significa apenas que a app não é distribuída pelo Google Play e está assinada com a sua própria chave. O que pode verificar:
- o código-fonte é público: git.jumphp.net/jumphp/jumPhp (pasta
apps/runtime-android); - escuta apenas no próprio telemóvel (
127.0.0.1), só responde às páginas de jumphp.net e liga-se apenas onde toca em Sempre ou Desta vez; - nunca lê os seus ficheiros, contactos ou mensagens e nunca regista o que passa (só um registo: site, aplicação, destino, hora, volume);
- pode revogar cada permissão, ou desinstalar a app, em qualquer altura;
- impressão digital (SHA-256) do certificado de assinatura:
D5:4C:E2:69:90:7A:FE:E5:0C:1F:E6:73:70:98:38:DD:15:16:29:CC:B0:35:4C:ED:FB:0F:98:F6:E6:5D:15:AE.
Instalar, passo a passo
- Transfira
jumphp-runtime-android.apkda página de versões (a mais recenteruntime-android-v…). O Chrome pode perguntar «Este tipo de ficheiro pode danificar o dispositivo»: toque em Manter (ou Transferir mesmo assim). - Abra o ficheiro transferido. O Android diz «Por segurança, o telemóvel não pode instalar apps desconhecidas desta origem»: toque em Definições e ative Permitir desta origem (é para o seu navegador, p. ex. Chrome). Se nada abrir: Definições → Apps → Acesso especial → Instalar apps desconhecidas → o seu navegador → Permitir. Volte e toque em Instalar.
- Se o Google Play Protect mostrar «Bloqueada», «App bloqueada para proteger o dispositivo» ou «Analisar a app?»: toque em Mais detalhes → Instalar mesmo assim (ou Instalar sem analisar). Em Xiaomi pode surgir outra pergunta de segurança: aceite.
- Abra o JumPHP runtime. Permita as notificações quando o Android pedir (Android 13+): as perguntas («Permitir esta aplicação?») chegam como notificações.
- Arranca sozinha (Estado: ATIVO, uma notificação fica visível). Toque em Mantê-lo ativo e escolha Sem otimização / Sem restrições na bateria, para o Android não a parar.
- Em Xiaomi, Huawei, Oppo, Vivo, OnePlus, Samsung… toque também em Iniciar com o telemóvel (arranque automático) e ative: senão o telemóvel não reinicia a app após um reinício.
- De volta à página da aplicação, o indicador fica laranja: toque em Allow this app. Uma notificação pergunta «Permitir …?»: toque nela e escolha Sempre. O indicador fica verde.
Preciso do modo de programador?
Não. As opções de programador e a depuração USB não são necessárias para instalar um .apk a partir do navegador. Só a permissão «Instalar apps desconhecidas» para o navegador (passo 2). Pode desativá-la depois.
Atualizações
A app procura uma versão mais recente a cada 6 horas (e quando a abre). Surgem uma notificação e um botão Instalar: o Android verifica que o novo ficheiro está assinado com a mesma chave, confirma e pronto.
Problemas
- App não instalada: há uma cópia antiga assinada com outra chave. Desinstale e volte a instalar.
- Pára após um reinício: ative o arranque automático (passo 6) e a definição da bateria (passo 5).
- O indicador fica vermelho: abra a app (deve dizer Estado: ATIVO) e recarregue a página; ou toque em Start / install the app na página.
- A pergunta não aparece: permita as notificações da app (Definições → Apps → JumPHP runtime → Notificações).
No iPhone não é possível (sem serviço em segundo plano com porta local): a aplicação continua a ligar-se pelo servidor jumphp.net.
Ver também: JumPHP runtime.