VIBE IN PUBLIC_

Keystore Android: quem sobe AAB não perde o app no celular

Quem sobe AAB não perde o app se perder a keystore Android. Na live, Martin Blume viu que o Google assina o APK que chega no celular.

Keystore Android: quem sobe AAB não perde o app no celular

Se você sobe AAB no Play Console, perder a keystore Android não mata o app no celular. O Google pega o bundle, gera os APKs finais e assina cada um com a chave que o aparelho confere na hora de atualizar. Eu vi isso na live de Martin Blume, que constrói o Fumava, um app para parar de fumar, e já tinha acesso de produção no Google Play.

O chat assustou ele com a "K Store". A correção veio com o erro install failed update incompatible e com o formato do upload: ele sobe AAB, não 1 APK.

O medo da keystore Android chegou pelo chat

Martin relia o recado em voz alta. O medo do pessoal era perder o acesso ao aplicativo para fazer otimizações se a tal da K Store sumisse.

um monte de gente me falou que se eu perder a tal da K Store ou alguma coisa assim, eu não consigo mais acessar o aplicativo para fazer otimizações

Ele mesmo repetiu a correção que chegou em seguida, ainda sem cravar se era o mesmo problema:

Tá, agora me falaram aqui na live que não é para acessar, é para assinar o APK para atualizar por cima da mesma versão. Não sei se é a mesma coisa que a gente tá falando.

Ele estava tentando encaixar o recado no que já sabia. Login no app era uma coisa. Assinar um pacote para atualizar o Fumava já instalado era outra, e ele não tinha essa distinção pronta.

O susto faz sentido se você vem de gerar o binário na máquina e mandar esse arquivo para o aparelho. A keystore Android é a prova de que o próximo pacote veio do mesmo autor do app já instalado. Sem essa assinatura igual, o sistema recusa a atualização e trata o arquivo novo como outro aplicativo.

No Play Console o login continua. Nexus, no chat da live, separou o que se perde: o Play Console continua aberto; some a capacidade de publicar algo que instale por cima do que já está no celular da pessoa.

install failed update incompatible trava no aparelho

Nexus descreveu o mecanismo: o Android recusa instalar uma atualização assinada com uma chave diferente da que assinou o app já instalado. O erro é install failed update incompatible. No aparelho da pessoa não há contorno, e nenhum suporte resolve esse erro no celular.

O usuário já tem o Fumava (ou o seu app) na tela inicial. Você gera uma versão nova, assina com outra keystore Android, manda o arquivo. O celular compara as assinaturas e para. O Play Console ainda abre e a ficha na loja continua no ar, mas a atualização não entra no dispositivo porque o Android recusou o pacote.

Por isso o chat trata a keystore como o arquivo da atualização: se ele some, o próximo pacote não instala por cima do que já está no celular. No modelo de quem gera APK, o autor é o assinante. Quem perde o arquivo perde o direito de pousar em cima da base instalada.

Por que o vibe coding com AAB tira o Martin dessa conta

Martin ouviu o mecanismo e se localizou no meio da frase:

Eu subo um A B, não um APK. Agora o que que isso significa? Eu não faço a mínima ideia.

Ele nomeou o formato e admitiu que o significado não estava na cabeça. Martin estava no dia 37 construindo em público, com acesso de produção, e essa peça ainda faltava.

Depois, com a explicação do Nexus ainda na tela:

É o Google. O problema é deles.

Ele sobe AAB, o Android App Bundle, e não APK. A chave que assina o que chega no celular não é a dele. Quem sobe AAB não perde o app se perder a keystore Android, porque o Google assina o APK que chega no celular.

COMPARAÇÃO

Gera APK na máquina

Você assina. Perdeu a keystore, o próximo pacote toma install failed update incompatible

Sobe AAB no Play Console

O Google assina o APK que chega no celular. Perder a keystore não mata o app

Eu acompanhei essa sessão de vibe coding no momento em que o builder quase levou para casa o pânico errado. O chat falava em "K Store" como o arquivo sem o qual o app morre no celular. A live gravou o susto e a correção no mesmo bloco.

Na mesma live ele também falou de plano Claude, outra lição.

O que você faz amanhã se o chat gritar keystore

Quem faz vibe coding e fecha o dia no Play Console precisa olhar o formato do upload antes de entrar no pânico da K Store. Se o upload é bundle, a atualização que chega no celular é o APK que o Google assinou, não o binário que saiu da sua máquina.

Se você ainda gera APK e instala por cabo ou manda o arquivo, a keystore Android continua sendo o que o aparelho confere na hora de atualizar. Perdeu o arquivo, o próximo pacote toma install failed update incompatible.

Para quem está no caso do Martin: acesso de produção no Google Play, Fumava subindo como AAB. Fique com o Play Console e com o hábito de subir bundle. O que esta live separa é a chave que o chat nomeia e a chave que o celular realmente lê.

A live está no YouTube. Dá para assistir à live no momento em que o chat fala K Store e o Martin descobre que sobe um A B.