Por que as atualizações da OTA não são reproduzidas com telefones fixos?
O Android é baseado no Linux, portanto, os dispositivos Android vêm com um usuário “root” que funciona como a conta de usuário do administrador no Windows. Por padrão, o Android não dá acesso à conta raiz. Enraizamento é o processo de habilitar o acesso à conta raiz, instalando o su binário. As aplicações podem chamar o su para obter privilégios elevados, para que possam libertar-se da caixa de proteção de segurança do Android e fazer coisas mais poderosas. O Android não vem pré-enraizado por causa dos problemas de segurança que isso pode levar, especialmente para usuários com menos inclinação técnica.
O processo raiz também instala um aplicativo como o SuperSU, que controla o acesso ao su binário, para que você possa escolher quais aplicativos podem ter acesso root.
Você geralmente perderá seu acesso root quando instalar uma atualização do sistema operacional. No Lollipop e nas versões anteriores do Android, a atualização OTA (over-the-air) define a partição do sistema Android de volta ao estado de fábrica, removendo o su binário. Em dispositivos mais recentes com raiz sem sistema, ele substitui a imagem de inicialização. E se você tiver uma recuperação personalizada, talvez a atualização do OTA não consiga se instalar.
Era uma vez, a SuperSU tinha um “Modo de Sobrevivência” que permitia que você atualizasse as atualizações, mas isso não está mais por perto. Entre no FlashFire.
O que é o FlashFire?
O FlashFire é uma ferramenta poderosa da Chainfire, fabricante do SuperSU, que permite que usuários com root realizem uma variedade de ações, como atualizações OTA intermitentes e arquivos zip completos, criar e restaurar backups, limpar dados e muito mais. Ele efetivamente elimina a necessidade de usar a recuperação para fazer backup ou restauração manualmente, além de lidar automaticamente com o não-enraizamento e re-enraizamento ao atualizar arquivos de atualização.
Teoricamente, ele deve funcionar em muitos, se não na maioria dos aparelhos Android 4.2+. No entanto, existem ressalvas.
Em muitos dispositivos, o root impedirá que os OTAs façam download e pisquem. Em alguns dispositivos, ele realmente será baixado, mas você precisaria de uma ferramenta como o FlashFire para exibi-lo com êxito. Em outros dispositivos, ele não será realmente transferido, então você precisará obter o arquivo OTA de outra maneira (eles são frequentemente publicados em sites como XDA Developers) e talvez você possa exibi-lo com uma ferramenta como o FlashFire. Se você não conseguir o arquivo OTA, poderá ficar sem sorte.
Além disso, se você estiver executando um dispositivo com raiz que está obtendo uma atualização completa da versão, de Lollipop para Marshmallow, por exemplo, as coisas ficam mais obscuras. Como não há como iniciar o Marshmallow sem um bootloader desbloqueado, você perderá completamente o acesso root se o bootloader do seu dispositivo estiver bloqueado. Isso é inevitável. Se você tiver desbloqueado o gerenciador de inicialização, no entanto, o FlashFire deve ser capaz de preservar (ou pelo menos restabelecer) o acesso root assim que a atualização estiver concluída.
Portanto, embora não seja garantido que o FlashFire funcione em todos os dispositivos, se você usou a rota "oficial" para fazer o root no seu smartphone, provavelmente funcionará.
Se você quiser saber mais, incentivo todos os interessados a verificar este tópico no XDA antes de começar. Quando estiver pronto, você poderá instalar o FlashFire na Play Store.
Como usar FlashFire para Flash uma atualização OTA, sem perder raiz
Quando você for notificado de que há uma atualização disponível para o seu dispositivo, a primeira coisa a fazer é ir em frente e fazer o download: mas não o instale. Se você disser que a atualização vá em frente e instale, ela provavelmente falhará, pois você está executando um dispositivo com raiz.
Se você tiver uma recuperação personalizada como o TWRP instalado, o FlashFire fará o backup antes de iniciar o processo e restaurá-lo posteriormente.
O que fazer se o flash da OTA não funcionar
Se você modificou o seu dispositivo de forma a impedir que o FlashFire aplique a atualização - talvez você esteja executando um kernel personalizado, ou a partição / system foi modificada pelo Xposed Framework, por exemplo - então a atualização “falhará. No momento, não há notificação de que a atualização não foi aplicada. Portanto, você precisará acessar o menu Configurações> Sobre o telefone e verificar se o número da versão foi alterado. Caso contrário, você sabe que a atualização não foi aplicada (há também uma boa chance de o Android notificá-lo de que a atualização ainda precisa ser instalada).
Quando isso acontece, a melhor coisa a fazer é fazer o download da imagem de fábrica do seu dispositivo, se estiver disponível. Neste exemplo, mostrarei a atualização mais recente (patches de segurança de abril de 2016) no meu Nexus 7.
Depois de fazer o download, copie o arquivo.tgz da imagem de fábrica para o armazenamento interno ou cartão SD do seu telefone.
Abra o FlashFire e toque no botão de ação flutuante (o botão vermelho com o sinal de mais) no canto inferior direito. Selecione "Pacote de firmware do Flash".
Isto é apenas arranhar a superfície do que o FlashFire pode fazer atualmente, e isso sem mencionar o que será capaz no futuro. Sem dúvida, teremos mais coisas a dizer sobre isso depois que passarmos mais tempo com atualizações futuras do aplicativo.