domingo, novembro 27, 2011

Mega Tutorial Galaxy S II - GT-I9100 - Root - Custom Roms - Reviews

http://brasildroid.com.br/galaxy-s-ii-i9100-geral/1958-mega-tutorial-galaxy-s-ii-gt-i9100-root-custom-roms-reviews.html

Vejo que os usuários tem muitas dúvidas sobre esses temas, então resolvi criar um tópico específico para o S II. Caso os moderadores considerem desnecessário sintam-se a vontade para remover/mover o tópico.

Todas as fotos foram feitas com o aparelho. Não tenho muito cuidado, assim é possível ver que algumas fotos estão tortas, bolhas na película de um dos aparelhos... Ainda assim é possível ver a qualidade da câmera, melhor que uma câmera da sony que tenho aqui em casa (exceto no escuro). Todas as fotos foram feitas dentro do meu apartamento, portanto a luminosidade não é a ideal.

Vou explicar os princípios básicos sem me aprofundar demais, tentarei ensinar apenas o que vai ser usado pela maioria dos usuários.

Em primeiro lugar, recomendo a leitura da faq. Tem muita coisa importante, se você assimilar 10% já vai ter aprendido muita coisa.
http://brasildroid.com.br/showthread...87-FAQ-Android

Agora vamos aprender algumas coisas básicas sobre o aparelho, existem 3 modos de boot:

1- Boot normal: esse é o modo que todos conhecemos, o aparelho carrega o sistema operacional android.

2- Modo Recovery: Esse modo permite que você retorne o celular para as configurações de fábrica (wipe data/factory reset). Caso você tenha configurado uma senha para seu android ela vai ser solicitada para entrar nesse modo. As outras opções não são muito importantes, não se preocupe com elas. Para acessar esse modo ligue o celular pressionando as teclas Home + Volume pra cima + Power. Mantenha as 3 teclas pressionadas até aparecer a tela abaixo.



3- Modo Download: Esse modo permite que você instale as custom roms. Para acessar esse modo ligue o celular pressionando as teclas Home + Volume pra baixo + Power. Mantenha as 3 teclas pressionadas até aparecer a tela abaixo.



Esse aviso informa que instalar custom roms pode causar sérios problemas ao seu aparelho. Caso queira prosseguir pressione volume pra cima, caso queira cancelar pressione volume pra baixo. Confirmando o modo download, temos a tela abaixo.



Reparem que em custom binary download aparece no. Isso significa que nenhuma custom rom (ou kernel) não oficial foi instalada nesse aparelho. Sim, a samsung permite que você instale o que quiser, mas existe um contador "dedo duro" que indica quantas vezes você instalou uma custom rom (ou kernel). Ninguém pode afirmar o porquê desse contador existir, mas muita gente acredita que essa informação possa ser utilizada para ter sua garantia negada. Repito, oficialmente não existe nenhuma informação, apenas especulações. Segue a tela de um aparelho que já sofreu uma modificação:



Reparem que o contador está em 1 e o current binary é custom, não mais samsung oficial. É possível zerar esse contador através de um jig usb, segue o tópico:
http://brasildroid.com.br/showthread...as-custom-roms.

Nos firmwares mais novos (KIx em diante) existe um novo bootloader que não permite zerar o contador através do jig. Veja nas considerações finais como resolver. Se você utilizar o link desse tópico para baixar a rom verá que a maior parte das roms KIx tem uma observação de bootloader modificado, nesse caso o JIG irá funcionar. Se utilizar roms do samfirmware vai precisar seguir os passos descritos nas considerações finais.

Muito bem, aprendemos sobre os modos de boot, então chegou a hora de aprender a instalar roms (custom ou originais).

É bom lembrar que apesar de ser quase impossível brickar seu aparelho através desses procedimentos isso pode acontecer. Execute esses procedimentos por sua conta e risco, uma pessoa em cada mil consegue danificar o aparelho, esse pode ser você.

Em primeiro lugar, até o dia de hoje todos os aparelhos são iguais, portanto esses procedimentos funcionam em QUALQUER aparelho. Você pode instalar qualquer rom que exista e seja compatível com o GT-I9100, nosso querido Galaxy SII. Então vamos aprender a instalar roms e kernels no formato do odin (arquivos .tar)

ATENÇÃO, POR SEGURANÇA SEMPRE TENHA A BATERIA COM NO MÍNIMO 80% DE CARGA QUANDO FOR FLASHEAR QUALQUER ROM OU KERNEL.

1- Baixe e instale o kies no seu computador.
http://www.samsung.com/br/support/mo...OFTWARE.MANUAL

2- Reinicie o seu computador

3- Baixe a rom ou kernel de seu interesse (créditos ao usuário Intratech, do XDA):

Roms sem operadora: http://forum.xda-developers.com/show....php?t=1075278
Roms com operadora: http://forum.xda-developers.com/show....php?t=1113928

MUITO IMPORTANTE - As roms podem estar compactadas, em alguns casos é necessário descompactar com o programa 7zip, não winrar. Descompacte a rom até obter o(s) arquivo(s) com extensão .tar. Os arquivos .tar podem ser abertos com o winrar, não faça isso.

Existem 2 possibilidades, existirá apenas 1 arquivo .tar



Ou 4 arquivos, sendo 3 .tar e 1 pit.



4- Baixe o odin.
http://www.multiupload.com/1RTGSE061G

5- Abra o odin (tenha certeza absoluta de que nenhum processo do kies esteja aberto), caso sua rom tenha apenas 1 arquivo .tar selecione o mesmo em PDA.



Caso sua rom tenha os 4 arquivos, descarte o .pit e selecione os 3 .tar em seus respectivos campos (modem/radio - phone ; CSC-CSC ; o que sobrou em PDA).

As únicas opções a serem marcadas são auto reboot e f. reset time. Re-partition só deve ser marcada quando você utilizar o arquivo pit, o que NUNCA deverá ocorrer. Essa opção e arquivo só devem ser utilizados caso exista algum problema com as partições, sendo assim repito que NUNCA devem ser utilizados.

6- Faça um wipe factory reset (modo recovery, (ctrl+f, modo recovery)). NÃO ignore esse passo, é muito importante. Caso o wipe não seja feito seu celular pode entrar em bootloop, num caso mais leve diversos programas vão dar FC (force close).

7- Inicie seu celular em modo download, conecte o mesmo ao pc.

8- Aguarde um pouco, o odin deve reconhecer seu aparelho (em amarelo).



9- Pressione start e aguarde até aparecer PASS em verde e seu celular reiniciar completamente.



10- Parabéns, você instalou uma nova rom em seu celular! Nesse caso foi instalada a zto original, sem as porcarias das operadoras.

Algumas observações importantes:

- Após instalar uma custom rom ou um custom kernel através do odin, durante o boot vai aparecer um triângulo amarelo de alerta. Ele não atrapalha absolutamente nada, portanto não se preocupem.
- O contador de custom roms NÃO é iniciado caso a rom flasheada com o odin for original. Sim, como utilizei a rom original nesse exemplo o contador de custom roms não foi iniciado e o software continua sendo reconhecido como original samsung. Nesse caso o triângulo amarelo não aparece durante o boot.
- Por padrão os últimos caracteres definem o lançamento da rom, logo uma KG2 é mais nova que uma KG1. Essa analogia também pode ser feita com a última letra, logo uma KG1 é mais nova que uma KF1.

Muito bem, você tremeu de medo, se arrependeu profundamente durante o processo mas agora que deu certo quer é tentar novas coisas correto? Então vamos partir pro root!!!.

Em primeiro lugar, o que é acesso root? Imagine o computador do seu trabalho, existe o perfil de administrador que pode fazer o que quiser e o seu perfil, com várias limitações correto? No android é a mesma coisa, você é um usuário comum, com o acesso root você pode fazer modificações mais profundas no seu aparelho.

Mas qual a utilidade disso? Bem, são inúmeras, entre as mais comuns é a possibilidade da fazer o backup de todos os seus aplicativos (com o Titanium Backup por exemplo), instalar custom roms, bloquear as propagandas dentro dos aplicativos gratuitos...

Para rootear o celular é preciso flashear um kernel com essa funcionalidade. Mas o que diabos é o kernel? Bem, eu lhe pergunto, você leu a faq? Leia!!!!!!! A grosso modo o kernel é quem faz a comunicação do hardware com o software. Existem partes do android "travadas", que o kernel original não dá acesso. Para fazer o root instalamos um kernel que permite esse acesso, sua instalação faz modificações na parte "travada" do android liberando o acesso root. Como as modificações são feitas no sistema operacional (não é o kernel que tem o acesso root) você pode instalar o kernel original depois de conseguir esse acesso, sem perder o root.

Bem, chega de papo e vamos aprender a rootear o aparelho.

1- Baixe o kernel nesse tópico (créditos ao usuário Chaifire do XDA).
http://forum.xda-developers.com/show....php?t=1103399

Não olhe apenas o primeiro post, as versões estão espalhadas por diversos posts na primeira página. MELDELS, existem milhares de versões, qual vou instalar???????????

Qualquer um.

Você tá maluco??? Se o cara fez milhares de versões devo ter que utilizar a correta, vou brickar meu celular!!! Leia o que escrevi sobre o kernel. Sua função é basicamente entender as instruções do software e transmitir ao hardware. Sendo assim, teoricamente não existe nenhum problema em você utilizar um kernel diferente do original, contanto que ele seja compatível com o GT-I9100, vulgo Galaxy S II. A única precaução que você poderia tomar seria com as versões do android, por exemplo, caso a versão do seu android seja 2.3.3 não instale um kernel versão KG já que esses são originalmente desenvolvidos para o android 2.3.4. Ainda assim, os kernels KG devem funcionar no android 2.3.3, para provar minha teoria instalei o kernel KG1 na rom stock (android 2.3.3) zto. Você não precisa fazer isso, por segurança procure a versão mais próxima da sua (leve em consideração apenas as letras (KE, KF) e os números após essas letras). Por exemplo, se o seu kernel é KE4, instale o KE2 ou KE7 caso não encontre o KE4.



2- Extraia o arquivo .tar, no caso do kernel sempre será um arquivo único.

3- Utilize o odin para flashear o kernel que você baixou e extraiu, caso não saiba como utilizar o odin leia acima o procedimento de como instalar roms através do odin (ctrl+f, instalar roms e kernels). O kernel irá em PDA, siga exatamente os passos descritos para instalar roms. No caso do kernel não é preciso fazer o wipe factory reset.

4- Após seu celular reiniciar ele estará rooteado, nos seus aplicativos aparecerão esses ícones:



Parabéns, seu celular tem acesso root!

Algumas observações importantes:

- Ao instalar um kernel não original (como os do chainfire) o contador de custom roms será iniciado. Durante o boot aparecerá um triângulo amarelo alertando que seu celular está rodando um kernel/rom não original. Como expliquei antes, isso não interfere em nada no funcionamento do aparelho, aparece apenas durante o boot.
- Se ainda estiver desconfiado/tiver problemas você pode utilizar o odin para flashear o kernel original, o acesso root será mantido e o triângulo irá sumir. A única coisa que pode ser perdida é a funcionalidade do CWM (ClockworkMod, utilizado para instalar custom roms de forma alternativa ao odin). O kernel original pode ser encontrado nos links de roms citados no começo do tópico. Flashear o kernel original não vai zerar o contador de custom rom.
- Todos os programas que precisam de acesso root (superuser) solicitarão sua autorização.
- Caso não tenha lido acima leia sobre o jig usb (ctrl+f, jig).

-----------------------------------------------------------------------------------------------------------------------------------------
Instalando custom roms.

Apesar de não ser obrigatório, recomendo fortemente que agora que você tem o acesso root seja feito o backup da pasta EFS. Os procedimentos necessários estão descritos no post 3. Caso não queira fazer o backup é só seguir os procedimentos abaixo.


Muito bem, agora temos o celular com uma rom stock (sem operadora) e rooteado com o kernel do Chainfire. Se repararem, além do ícone de superusuário foi criado um ícone chamado CWM (ClockworkMod). É através desse programa que podemos instalar custom roms e personalizações. Para acessar o CWM basta clicar no ícone criado e escolher a opção "Reboot in ClockworkMod", outra opção é ligar o celular com o combo de teclas Home + Volume pra cima + Power. O seu modo recovery original foi substituído pelo modo CWM.



Reparem que esse modo recovery possui mais opções que o recovery original. A navegação no ClockworkMod é feita com a tecla de volume (assim como o recovery normal) mas o enter pode ser a tecla Home ou a tecla Power, depende da versão do programa. Sendo assim, se você não está conseguindo selecionar as opções desejadas com uma determinada tecla tente com a outra.

Muito bem, esse programa é muito importante porque a maioria esmagadora de custom roms e kernels devem ser flasheados através do CWM, então vamos aprender a usá-lo.

1- Baixe a custom rom de seu interesse, algumas opções do XDA:
http://forum.xda-developers.com/forumdisplay.php?f=1058
http://forum.xda-developers.com/forumdisplay.php?f=1204

Recomendo que leia sobre a rom, muitas tem algumas limitações como o browser original com lag, aplicativos nativos removidos, funções que ainda não foram adaptadas corretamente, etc.

2- Copie o arquivo zip (não extraia, por mais estranho que pareça) para a raiz da memória interna do seu aparelho. Não copie para o cartão sd externo já que algumas vezes esse procedimento não funciona como deveria. A forma mais fácil de copiar o arquivo é ir em configurações -----> aplicações ------> desenvolvimento e ativar a depuração usb. Aparecerá um aviso, confirme clicando no sim.



Conecte seu celular ao pc e expanda a barra de notificações, clique em USB conectado.



Agora é só clicar em "Ligar armazenamento USB" e seu celular funcionará como um pendrive. Novamente, copie a rom de sua preferência na memória interna do aparelho, não no cartão sd (caso você tenha um).



Clique em "Desligar armazenamento do PC" e desconecte seu celular do pc.

3- Entre no modo CWM (pelo programa ou ligando o celular através do combo de teclas para o modo recovery).

4- No modo CWM, use a tecla volume para navegar até advanced, home para confirmar.



5- Selecione wipe Dalvik Cache. Aparecerá um monte de no, navegue até o yes e confirme.



6- Volte ao menu inicial e selecione wipe data/factory reset (também aparecerá um monte de no por segurança).

7- No menu inicial, selecione install zip from sdcard, depois choose zip from sdcard.



8- Selecione a rom que você copiou para a memória interna do seu celular (no meu caso Leomar) e confirme.



Agora é só aguardar o término do processo. Parabéns, seu celular está com a custom rom de sua escolha instalada!

Algumas observações importantes:

- Quando você instala alguma coisa pelo CWM o contador de custom roms não é acionado, portanto você pode flashear quantas roms/kernels quiser sem alterar o contador.
- Nessa versão do CWM (laranja) o enter é a tecla Home, a tecla Power tem a função de voltar. A versão azul tem os comandos invertidos.
- Após a instalação da rom ou kernel você pode apagar o arquivo zip da memória interna do seu celular.
- Esse procedimento funciona para flashear custom kernels, temas e outras atualizações disponíveis pra rom que você escolheu. No caso de kernel e temas não é preciso realizar nenhum wipe, basta escolher o arquivo zip através do CWM e mandar instalar.
- Caso você tenha algum problema (como bootloop) e não consiga resolver fazendo os wipes e flasheando uma nova rom através do CWM utilize o odin para flashear uma rom stock.

Esta parte abaixo é muito importante, pois o backup da pasta efs é exssencial, nela está guardada informações do seu telefone como imei e base band

Pasta EFS

Essa pasta é de suma importância para o seu celular, é nela que estão armazenados dados como o IMEI, Mac adress e código do produto. Se essa pasta for alterada e você não tiver um backup seu aparelho só voltará a ter sinal se passar por alguma assistência técnica. Para fazer o backup é preciso ter acesso root.

Vamos utilizar o seguinte aplicativo (créditos ao usuário HellcatDroid do xda):

http://f.lui.li/get_99_f13d.html

Imagem do aplicativo:



Para fazer o backup basta clicar em backup EFS, aparecerá um arquivo .img na memória interna do seu telefone:



Esse arquivo é o seu backup, guarde com muito cuidado.

Mas como essa pasta pode ser alterada? Basta uma distração no odin (marcar a opção clear EFS) e pronto, seu aparelho não tem mais sinal. Além disso, um arquivo zip mal feito pode apagar o conteúdo da pasta. Acredite, isso pode acontecer com você apesar de ser uma situação bastante rara, faça o backup.

Devido a importância dessa pasta não fique brincando de restaurar o backup. Apenas utilize o aplicativo para fazer o backup e torça para nunca precisar restaurar (opção restore EFS do aplicativo).


Qual Kernel utilizar?

Essa é uma pergunta sem resposta. Muitos falam maravilhas de determinados kernels, nem sempre você vai perceber todas as vantagens anunciadas. O ideal é você testar (praticamente todos podem ser flasheados através do CWM) e tirar suas próprias conclusões. Algumas funções que custom kernels propiciam:

- Possibilidade de undervolt para economia de bateria. Todos os processadores são únicos, cada um tem uma capacidade própria e um custom kernel permite que você teste essa capacidade. Por exemplo, o meu processador pode ser capaz de rodar a 1200 MHz com uma alimentação de 1175 mV, enquanto o seu pode precisar de 1250 mV. É claro que o fabricante precisa definir um valor que seja seguro para todos os processadores, então por padrão o nosso aparelho consome 1300 mV rodando a 1200 MHz. Com o custom kernel você pode testar e descobrir quais são os valores limites para o seu aparelho, economizando bateria. Por padrão o undervolt não danifica o aparelho, mas pode deixá-lo instável caso você exagere na dose.

- Possibilidade de overclock. Mesma caso do undervolt, todos os processadores são capazes de rodar a 1200 MHz, mas alguns podem chegar a até 1600 MHz de forma 100% estável. Eu NÃO recomendo essa prática, o Galaxy S II já é extremamente rápido, não existe nenhum programa que ele não rode liso. Além de não existir essa necessidade, o overclock pode danificar o seu processador por super aquecimento. Mesmo assim alguns usuários consideram seguro fazer um overclock menor, permitindo que o aparelho rode a 1400 MHz.

- BLN. Como nosso aparelho não tem um led de notificação, desenvolveram o BLN. Nossas teclas capacitivas viram o led de notificação, mas isso pode drenar bastante a bateria. Existem aplicativos que tem a mesma função mas utilizando a tela como o NoLed.

- Acesso root, CWM, melhorias em desempenho...

Impossível relacionar todas as características disponíveis, leia, teste e tire suas próprias conclusões. Aqui estão os kernels mais famosos:
http://forum.xda-developers.com/forumdisplay.php?f=1058

É importante notar que certas funcionalidades são acessíveis apenas com a ajuda de determinados aplicativos. Por exemplo, o kernel nimphetamine só permite overclock e undervolt através do programa setcpu. Já o Lulz kernel tem suporte através do Tegrak, portanto é muito importante se informar antes de flashear o kernel.

-----------------------------------------------------------------------------------------------------------------------------------------

Algumas considerações finais:

1- Wipe data/Factory reset.

Sei que é uma saco perder todas as suas configurações e aplicativos a cada rom flasheada, mas é um mal necessário. Algumas vezes é possível instalar a evolução da rom sem fazer o wipe (por exemplo, você tem a versão 1.0 de uma determinada rom e é lançada a versão 1.1) mas mesmo assim recomendo os wipes (Dalvik e Factory reset). Essa é a forma mais segura de não ocorrer o bootloop (celular fica reiniciando continuamente) e dos aplicativos não ficarem provocando FCs (force close) continuamente.

Uma forma de amenizar essa situação é o programa TitaniumBackup, existe um tópico muito esclarecedor desenvolvido pelo nosso amigo fixbob:
http://brasildroid.com.br/showthread...TitaniumBackup

2- Outro problema é a configuração de widgets e ícones nas telas iniciais. Alguns launchers tem a opção de backup, pessoalmente utilizo o launcherpro. Ele consegue fazer o backup da maioria das definições do usuário, a única coisa que ele não consegue restaurar são os widgets de terceiros.

3- Muita gente tem dúvidas sobre os diferentes tipos de modem e seu desempenho. O Modem segue a mesma lógica do kernel, você pode testar outros flasheando através do odin. Pessoalmente acho besteira, já testei muitas versões e nunca reparei um desempenho superior em determinada versão. Muitas vezes é flasheado um novo modem e a melhora percebida está na rede (todos sabemos que a rede não tem desempenho constante), mas fique a vontade para testar novas versões.

4- Não mencionei mas é possível remover o triângulo amarelo (após o root) flasheando um stock kernel após a instalação do CF-kernel, extraindo o arquivo zimage do CF-kernel e flasheando esse arquivo através do CWM (aplicativo, opção flash kernel). Não recomendo esse procedimento, isso não vai zerar seu contador de custom roms e você tem um trabalho desnecessário apenas para não ver um triângulo por 3 segundos.

5- A samsung percebeu a falha relacionada ao jig resetar o contador de custom roms. Nos firmwares a partir de setembro (KIx) está incluído um novo bootloader, nesse caso o jig não zera mais o contador. Para resolver basta extrair o arquivo .tar (usando o programa 7zip) abaixo, e flashear através do odin (pda ou bootloader, tanto faz). Créditos ao usuário Intratech do XDA.

http://www.multiupload.com/LQQBRQVJUD


Como expliquei antes, esse tópico ainda está em construção.

Espero que seja útil, muita informação ainda está por vir.


FAQ:

1- Como sempre antes de fazer as modificações eu pesquiso muito e vi alguns métodos diferentes no youtube usando um programa chamado SuperOneClick e Insecure Kernel. Qual seria a diferença para esse método que está descrito aqui no fórum?

O método superoneclick foi o primeiro procedimento para se conseguir o root no S II. Instala-se o insecure kernel KDD e utiliza-se o superoneclick para conseguir o acesso root. Com o tempo os desenvolvedores criaram kernels que já tem o acesso root habilitado, poupando o trabalho de utilizar o superoneclick. Hoje não faz sentido algum utilizar esse método.

2- Já baixei a FW i9100UHKG7 e também o Kernel CF-Root-SGS2_UH_MUL_KG7-v4.1-CWM4.zip no xda forum. Como vou flashear os 2 arquivos?

A rom já vem com o kernel embutido, você não precisa baixar o kernel separado. O arquivo só está lá para caso alguém flashear um custom kernel ter a possibilidade de reflashear apenas o kernel original.

3- Posso flashear com o Odin a ROM stock por cima da que eu já tinha feito o ROOT? E se for uma custom rom?

Você sempre pode utilizar o odin para flashear qualquer rom (exceto as roms em .zip feitas para serem flasheadas com o CWM), não importa qual rom você está utilizando ou se já tem acesso root. O único porém é que se você já tiver o acesso root ele será perdido (no caso das roms stock). Para resolver basta reflashear algum kernel que libere esse acesso, nesse tutorial recomendo os CF-kernels.

4- E as roms .zip (instalação pelo CWM), preciso flashear antes a versão da rom pelo Odin antes de instalar pelo CWM?

Não, você pode flashear qualquer rom (que deva ser instalada pelo CWM) independente do kernel ou rom que já esteja utilizando. Como explicado na pergunta 2, a rom já traz um novo kernel, depois da instalação da rom basta flashear o kernel de sua preferência.

Um comentário:

Aloysio disse...

Sou novo na área Android. Estou com um GT-I9100, versão 2.3.5, BB I9100VIKJ1.
Queria uma ROM livre de operadora. As deste blog não estão mais acessíveis via multiupload.
Como faço?