Instalando uma versão do Android com o fastboot

Posted by rlecheta on fevereiro 04, 2013
Android, Tutorial

Olá,

Uma vez eu estava brincando com meu Android, para deixar ele com acesso root. Na época fiz uma besteira e acabei apagando completamente o sistema operacional. E no final da brincadeira, meu Android não ligava mais. Foi quando aprendi sobre uma ferramenta utilitária chamada fastboot, utilizada para enviar uma versão do sistema operacional pela USB, e formatar seu Android.

Neste tutorial vou formatar um Nexus S e instalar o Android 4.1.2 nele, mas isso vai apagar todos os dados do aparelho.

Lembre-se, se você prosseguir é por sua conta e risco, e faça um backup, pois todos os seus dados serão apagados.

Outra coisa, este tutorial foi baseado na linha Google Nexus, e testado especificamente para o Nexus S. A vantagem dos devices da linha Nexus é que é fácil encontrar as imagens do sistema operacional compilada para estes devices, pois são disponibilizadas pelo Google neste link:

https://developers.google.com/android/nexus/images

Vamos seguir os seguintes passos.

1) Baixe a imagem correta para seu device. Neste tutorial estou utilizando o Nexus S.

Então eu procurei esta versão: “Factory Images “soju” for Nexus S (worldwide version, i9020t and i9023)”

Baixe q versão que quiser, por exemplo a 2.3.6 ou 4.1.2.

img001

2) Instale o Android SDK

Para prosseguir com este tutorial, você precisa instalar o Android SDK.

Vamos utilizar as ferramentas adb e fastboot localizadas na pasta /android-sdk/platform-tools.

3) Instale o Driver

Este tutorial é para desenvolvedores, então você já sabe que precisa instalar o driver. O driver da linha Nexus é inclusive disponibilizado pelo SDK Manager.

Como eu sei que você já está com o driver instalado, conecte seu device na USB e digite o comando “adb devices”. O resultado deve ser o seguinte.

C:\android-sdk-windows\platform-tools>adb devices
List of devices attached
3334F3D59BBD00EC device

Lembre-se de ativar o modo USB no menu de desenvolvedores. Se seu device não for listado aqui, revise a instalação do driver.

4) Entre no bootloader

Todo Android possui um bootloader, que é um conjunto de instruções que executa antes do sistema operacional. Você pode entrar no bootloader se deseja brincar com coisas avançadas, como instalar uma nova versão do Android no seu apaelho, que é o que vamos fazer aqui.

Para entrar no bootloader podemos fazer de duas formas. Recomendo testar as duas.

A primeira é deixar seu Android ligado e conectado na USB. Depois digite este comando no prompt:

adb reboot bootloader

A segunda é desligar seu Android (power off). Depois pressione o botão do Volume + e logo depois o Power. E mantenha pressionado os dois por alguns segundos, tipo 1 ou 2.

Ao entrar no bootloader você verá uma tela como esta:

Repare no texto LOCK STATE – LOCKED.

02-bootloader

5) Desbloqueando o bootloader

No bootloader repare na mensagem: LOCK STATE – LOCKED

Isto indica que o bootloader está travado por motivos de segurança, e para formatar o Android precisamos destravá-lo.

Este passo muda de fabricante e fabricante, e por isso eu prefiro a linha Nexus, pois o suporte do Google para desenvolvedores é melhor.

O problema de destravar o bootloader é que todos os dados serão apagados, e portanto, faça backup e somente prossiga se você tiver certeza do que está fazendo.

Digite este comando no prompt:

C:\android-sdk-windows\platform-tools>fastboot devices
3334F3D59BBD00EC fastboot

Se você conseguir visualizar seu device novamente conectado na USB, ótimo. No Linux e Mac você não vai ter problemas. Mas no Windows é necessário instalar o driver, e o driver utilizado para desenvolvimento não e compatível com este do bootloader. Você pode baixar e instalar o famoso PDANET http://www.junefabrics.com/android/download.php

Depois de instalar o driver digite novamente o comando “fastsboot devices” e somente prossiga se você conseguir visualizar seu Android conectado na USB.

Para desbloquear o bootloader digite este comando:

fastboot oem unlock

Feito isso você deverá ver na tela do seu Android uma mensagem alertando que todos os dados serão apagados, e se você deseja prosseguir.

03-bootloader-unlock

Leia cuidadosamente a mensagem, e se tem certeza que deseja continuar, utilize o botão do Volume + para selecionar a opção Yes. Depois pressione o botão Power para confirmar.

Isto vai desbloquear o bootloader e agora você verá a mesma tela do bootloader, mas com a mensagem LOCK STATE – UNLOCKED, indicando que ele foi destravado.

Neste momento não instalamos nenhuma versão do Android, mas lembre-se que seus dados foram apagado e portanot se você reiniciar o device agora, será como se fosse a primeira vez que está ligando seu Android.

04-bootloader-unlock-ok

6) Preparando o ambiente

Eu baixei as imagens do Android Nexus S, versão 2.3.6 e 4.1.2.

Primeiro eu instalei a versão 2.3.6 nele, e podemos ver no menu > Settings > About que está com a versão 2.3.6 agora:

05-2.3.6

Ok, esta foto é para comprovar que a atualização vai funcionar, pois vamos atualizar para o Android 4.1.2.

Lembre-se que agora você deve estar no bootloader e o comando “fastboot devices” deve reconhecer seu Android normalmente.

Depois de baixar o arquivo soju-jzo54k-factory-36602333.tgz, que é do Nexus S Android 4.1.2, descompacte o zip em algum lugar. O resultado deve ser estes arquivos.

img002

Basicamente aqui temos os seguintes arquivos:

  • flash-all.sh: é o script que você vai executar.
  • bootloader-**.img: é a nova imagem do bootloader que será formatada
  • radio-crespo-***: é a nova imagem de radio que será formatada
  • image-soju-jzo54k: é a imagem do Android 4.1.2 que vamos instalar agora

Basta executar o comando flash-all.sh que ele vai executar diversos comandos, que vão instalar estas imagens no seu aparelho!

O arquivo flash-all.sh possui o seguinte conteúdo:

fastboot flash bootloader bootloader-crespo-i9020xxlc2.img
fastboot reboot-bootloader
sleep 5
fastboot flash radio radio-crespo-i9020xxki1.img
fastboot reboot-bootloader
sleep 5
fastboot -w update image-soju-jzo54k.zip

Note que para estes comandos funcionarem a ferramenta fastboot precisa estar no path, e lembre-se ela se encontra na pasta /android-sdk/platform-tools:

Eu gosto por motivos de praticidade, copiar todos estes arquivos par a pasta /android-sdk/platform-tools.

Assim o problema está resolvido e todos os arquivos estão no mesmo lugar.

Agora execute o arquivo flash-all.sh ou flash-all.bat e BOOM!

Ao executar você verá os seguintes logs no prompt, enquanto a instalação é efetuada. O processo deve demorar uns 2 ou 3 minutos.

C:\android-sdk-windows\platform-tools>flash-all.bat
sending ‘bootloader’ (1536 KB)…
OKAY [ 0.205s]
writing ‘bootloader’…
OKAY [ 0.351s]
finished. total time: 0.565s
rebooting into bootloader…
OKAY [ 0.009s]
finished. total time: 0.012s
< waiting for device >
sending ‘radio’ (12288 KB)…
OKAY [ 1.550s]
writing ‘radio’…
OKAY [ 1.684s]
finished. total time: 3.243s
rebooting into bootloader…
OKAY [ 0.009s]
finished. total time: 0.012s
< waiting for device >
archive does not contain ‘boot.sig’
archive does not contain ‘recovery.sig’
archive does not contain ‘system.sig’
——————————————–
Bootloader Version…: I9020XXLC2
Baseband Version…..: I9020XXKI1
Serial Number……..: 3334F3D59BBD00EC
——————————————–
checking product…
OKAY [ 0.002s]
checking version-bootloader…
OKAY [ 0.002s]
checking version-baseband…
OKAY [ 0.003s]
sending ‘boot’ (3964 KB)…
OKAY [ 0.499s]
writing ‘boot’…
OKAY [ 0.507s]
sending ‘recovery’ (4308 KB)…
OKAY [ 0.549s]
writing ‘recovery’…
OKAY [ 0.549s]
sending ‘system’ (337443 KB)…
OKAY [ 42.392s]
writing ‘system’…
OKAY [ 40.266s]
erasing ‘userdata’…
OKAY [ 0.429s]
formatting ‘userdata’ partition…
Erase successful, but not automatically formatting.
Can’t determine partition type.
OKAY [ 0.057s]
erasing ‘cache’…
OKAY [ 2.004s]
formatting ‘cache’ partition…
Erase successful, but not automatically formatting.
Can’t determine partition type.
OKAY [ 0.009s]
rebooting…

finished. total time: 87.316s

Logo depois de instalar a nova imagem do sistema operacional, seu Android vai reiniciar e você verá a tela de Boas Vindas para que você configure o Android, como se acabasse de ter comprado um aparelho novo. Agora siga os passos normalmente, como entrar com seu login do Gmail e pronto.

06-ok

Se você quiser ver na prática resultado do comando flash-all.sh eu filmei este vídeo enquanto fiz este procedimento, confira abaixo.

Este tutorial mostrou como atualizar a imagem do sistema operacional em um Nexus S. Lembre-se que dependendo do fabricante estes passos podem ser outros.

O principal objetivo deste tutorial foi demonstrar a ferramenta fastboot, que faz um excelente trabalho.

4 Comments to Instalando uma versão do Android com o fastboot

  • ola ricardo muito bom seu tutorial gostei muito fiquei ate impougado em fazer outras coisa com td isso e mais um pouco, gostaria de saber de vc se para mudar outras configuraçoes do celular como sensor design outros melhoria na funçoes do celular seria o mesmo comando no promp ou qual seria o metodo pra isso queria colocar algo no meu aparelho que nao tem e mudar a versao do android que e de 4.4 para 5.0 ou 6.0 em fim me dar umas ideias ai abraço zap 961119473 82997087

    • Oi Alex, para mudar a versão do android eh como mostrei, basta achar a imagem. Para mudar características do celular precisa fazer uma imagem ROM customizada do Linux, e isso requer conhecimentos mais avançados nisso..

  • Boa tarde Ricardo, tenho um Galaxy S5 que está totalmente travado e ele liga apenas em uma tela preta e lá nessa tela fica ligado e aceita somente os comandos Fastboot. Hoje não tenho nenhum acesso so telefone, ele aparece uma bateria descarregada e desliga novamente. Entendi os procedimentos mas sabe se funciona apenas com estes comandos em fastboot?

    • Jonathan, não sei. O que fiz as vezes foi só estes passos para formatar meu celular, quando preciso instalar uma nova imagem do Google. Mas uso sempre a linha Nexus. Se a bateria está descarregada, é bom deixar bastante tempo carregando antes, as vezes podem nem dar boot devido a isso.