Tema
Assinatura de bundles
Com assinatura ligada, o app só aplica updates assinados com a chave do seu app. Mesmo que alguém consiga publicar um bundle por outro caminho, o app recusa.
No Pipa no Ar a assinatura é gerenciada: criamos um par de chaves RSA de 3072 bits só para o app. A chave privada nunca sai do Pipa no Ar; a CLI envia só os hashes dos arquivos para assinar.
Como ligar
- No app, abra Assinatura e clique em Ativar assinatura.
- Ligue a assinatura no
hot-updater.config.ts:ts...pipanoar({ appId: "app_xxxxxxxxxxxxxxxxxxxx", signing: true }), - Coloque a chave pública na build nativa.
- React Native bare: a CLI busca a chave e grava no Info.plist e no Android:sh
npx hot-updater keys export-public - Expo: baixe a chave pública na página Assinatura e aponte
publicKeyPathdo plugin@hot-updater/expopara o arquivo.
- React Native bare: a CLI busca a chave e grava no Info.plist e no Android:
- Gere e publique uma build nativa nova. Daqui em diante, todo deploy sai assinado.
Ordem importa
Builds antigas, sem a chave pública, continuam aceitando updates sem assinatura. Builds com a chave só aceitam updates assinados. Ligue signing: true no config antes de publicar o primeiro update para a build nova.
Trocar a chave
Troque a chave só se ela vazou. Builds que já estão nas lojas só aceitam a chave antiga, então publique uma build nativa nova com a chave nova antes de voltar a fazer deploy. O histórico de chaves fica na página Assinatura.