DEODEXANDO E CRIANDO SUA CUSTOM ROM COM ANDROID KITCHEN – De-odex and create own Custom ROM

Olá pessoal

Hoje trago algo novo no mundo dos blogs pois nunca achei um tuto bem detalhado sobre isso

Vejo tanta gente perguntando sobre deodexar uma ROM e vou mostrar agora como fazer .

Importante: eu não vou explicar como instalar o Cygwin e configurar o Kitchen Aqui  você poderá acessar o Thread do XDA e como fazer isso, então para seguir o tutorial você já deverá ter certa experiência em trabalhar com a plataforma , bem como saber se seu aparelho é suportado pelo Kitchen. No meu exemplo vou demonstrar para o Galaxy Win I8552 e este aparelho necessitou que eu efetuasse criação de suporte elaborando o Mount points  em tools que é premissa do Kitchen. 

Outro detalhe é que a plataforma Kitchen trabalha até a API 17 4.2.2

Bom vamos começar, as imagens são de boa resolução para ampliar clique na imagem

ETAPA 1 – Seleção do Firmware, Importação e Extração

Baixe no sammobile.com a sua rom stock e coloque em local fácil no PC

Abra o arquivo .tar com o winrar e extraia os arquivos copiando-os para a pasta original_updates que deverá estar na estrutura de  seu diretório Kitchen.  Que arquivo são estes?

Recovery.img, Boot.img, system.img.ext4, cache.img.ext4, hidden.img.ext4 e fat.bin

1

Agora  que ja colocou estes arquivos isso na pasta, abra o Kitchen ferramenta “cygwin” clicando no botão direito do mouse selecionando “Executar como administrador”

No prompt do cygwin type(digite) cd kitchen e em seguida ./menu

0

Na linha de comando escolha “1” e depois escolha o numero correspondente onde tenha a relação de arquivos img

01

Siga as instruções descritas pelo kitchen realizando os procedimentos que ele for propondo. No incio aparecerá a escolha de um folder novo como sugestão de nome. Opte pelas opções default que ele indicar. A pasta criada conterá o nome Working_data_hora Siga os steps descritos no prompt como mostra a figura para importar o system

Abrirá automaticamente o aplicativo que tem um ícone do pinguin chamado Ext2Explore (este aplicativo faz parte do pacote cygwin instalado). 

No Ext2Explore Vá no menu File / Open Image / browse no caminho da pasta indicada de seu projeto e dentro de /system selecione o arquivo.img que no meu caso foi o ext4_system.img

img

No termino poder aparecer uma tela extepxlore parou de funcionar, ignore e feche a pop up.

2

Agora vamos importar o Cache, você deverá instalar o DiskInternal Linux Reader antes de fazer isso

Siga os passos do prompt do cygwin para montar a Linux Native Volume 1

Para isso você deverá clicar em Drivers/mount no Linux Reader,  achar o caminho do arquivo que ficará como a figura

3

Agora clique duas vezes em cima de Linux Native 1 e verá a pasta Recovery File Folder

4

Ao abrir encontrará o arquivo sec_csp.zip, clique com o botão direito do mouse e em seguida em save

Em seguida ao abrir a a janela clique NEXT

5

Agora desmarque a opção Save directory sctruture e em browser selecione o caminho que o cygwin prompt do Kitchen estará apontando como exemplo  C:\cygwin\home\power\Kitchen\WORKING_xxx…xxx..\system

6

Pronto a pasta do seu projeto esta seleciona, Clique em NEXT e aguarde a finalização da exportação dos arquivos como mostram as figuras abaixo, clicando em finish quando terminar

Figura 1 – Next
7
Figura 2. Finished
8

Agora feche o Disknternal Linux Reader e retorne ao prompt e tecle enter

Siga os passos e tecle “y” para copiar os arquivos veja que ele te perguntará sobre levar arquivos/app do CSC
Ou tecle default “n” para pular isso , ATENÇÃO ele não levará estes add-ons para seu projeto
9
Agora a extração de seu Firmware e a criação de seu projeto esta terminando e poderá visualiza-lo no prompt
11

Pronto sua ROM foi extraída e importada para o KItchen, este é o status do seu projeto na opção 8 do Menu
12

ETAPA 2 – PERSONALIZAÇÃO

Adicionando o Root – Use a opção 2 para efetuar o Root no seu projeto seguindo os passos do Ktichen ele selecionará os caminhos e incluirá no Build o apk desta forma sua Rom será pré-Root
13

Escolha c “ minúscula” para selecionar o SuperSU
14
15

Addin busybox – Opção 3 do Menu, Tecle enter e siga os passos o Busybox prepara sua Custom ROM para receber Xposed dentre outros como Tweaks e performances
16

Zipalign – Opção 5, deixe seus apks mais leves e mais ágeis, isté faz parte de uma boa performance. Poderá fazer nesta opção ou no Build da ROM (compilação) caso deixe para o Final.
Fig.1-“y”
17
Fig.2- Start Zipalign
18
Fig.3 Process
19

Pronto…….. Agora tecle enter para continuar

Vamos Puxar um Status ate o momento….? volte no menu inicial do Kitchen e tecle a opção “8” Todas as modificações estarão com o status “YES”
20

ETAPA 3 – CUSTOMIZAÇÕES

Turbinando ….. A etapa a seguir é o mais importante deste Tutorial que é personalizar a ROM e daqui para a frente iniciaremos o modo avançado
DEODEXAR – O arquivo Odex trabalha numa espécie de motor de arranque do apk, ele serve para permitir que o aplicativo em si abra com melhor facilidade, mas muito são contrarias as opiniões pois quando deodexamos deixamos o cache livre, menor consumo de bateria e de memória RAM
No menu escolha a opção “0”, para acessar o ADVANCED OPTIONS
Aqui temos os comandos podemos extrair o recovery ou o boot de nosso celular, Init.d folder mas não vamos falar destes itens.  E será aqui neste Menu que realizaremos depois o Build da Custom ROM ou seja a compilação do arquivo .zip para flash
21

Lembre se de alterar o nível do API (Level) ANTES para a versão do sistema da ROM no caso eu utilizei o API 16 para versão Jelly B 4.1.2
23

Opção 11 do Menu: De-odex files – Type “11” vamos deodexar ambos /framework e o /system/app em uma única vez
Escolha “b” para ambos os diretórios e arquivos (framework e system). Esta será a etapa mais demorada pois rodará todos os aplicativos e arquivos .jar da pasta de recursos framework. Ao inicar use “y” para a geração de logs de erro.
24
O resultado deverá ser zero 0 pendentes na tela do prompt verá o seguinte resultado:
0*.odex files remain in system/app
0*.odex files remain in system/framework,

Tecle enter para continuar
Nota: Caso não seja este o resultado, veja os logs de erro gerados no caminho indicado.

Opção 13 do Menu: Criando Data folder script (isto é opcional mas deve ser efetuado se sua ROM terá aplicativos no Data/app)
26

Opção 14 do Menu -Criando Init.d folder pra receber depois no futuro os tweaks, etc… (relembrando na etapa 2 nos fizemos a instalação do root e do busybox)
27

Opção 16 do Menu – Assinar os apks. Vamos agora deixar agora a ROM apta para o Flash e necessário assinar os apks selecione 16 seguido de “a” todos os folders.
28

Opção 17 do Menu – Esta opção é para converter o script-update para script-updater padrão zip. Selecione a opção “2” do prompt .

script

ETAPA 4 – BUILDING ROM (compilação)

BUILD ROM : Agora vamos montar o Flash isso significa que já deixamos todos os itens preparados
No ADVANCED OPTIONS escolha avançado type “99”
29

Agora selecione 1 “Interactive Mode” pois este modo ele fará as solicitações. Em seguida escolha “y” em zipalign ( relembrando se executou o zipalign da etapa 2 escolha “n”)

30

Siga os passos indicados pelo prompt no caso do Edify (Script-update) , Sign apk (Assinaturas) use sempre a opção “default”  sugerida se não sabe o que estas opções fazem.

NOTA: Quando assinamos os aplicativos de sistema estamos configurando sua execução posterior e em conjunto. Eu optei por não assinar neste momento, isso porque irei utilizar outros apps externos ao pacote stock e remontar o build importando-o novamente (isto é outro procedimento que deixarei para outra oportunidade). 

Fig. Montando Script, Adequando o Meta-inf setup
32
Fig. Making Update.zip
33

Continue sempre seguindo os steps dando “Y” e enter
34

Veja o resultado no prompt Kitchen que deverá conter:
– Errors during flashing

Pronto sua ROM esta compilada e o arquivo zip pronto para flash via CWM ou TWRP esta pasta /OUTPUT_ZIP
O arquivo zip deverá conter as seguintes pastas conforme imagem abaixo

end

Bom é isso ai Pessoal espero que tenha passado uma boa visão pra vocês

UniandroidMod Project
MJ Rosa

XDA-Developer Member : @mjraogr

My Works:

Droidwin ROM
Droidwin v67 Baidu OS

ANDROWIN WHITE – Original Theard 09.12.2014

ANDROWIN BLUE Theme- Link 10-15-2014

DROIDWIN V1Original Theard 11-05-2014

DROIDWIN V2 4Shared: DroidWin Kitkat 11-28-2014

DROIDWIN V3 – Holo Blue version Android L: Thread

DROIDWIN V3.1 LIGHT LOLLIPOP THEMEThread

10 comentários

  1. Legal o post, é isso que estou procurando. Meu smart não tem custom rom. Pode me dizer como faço para trocar os apks da operadora por outros, em qual etapa faço isso? Estou procurando outros tutos mas está dificíl. Outra coisa, como uso Linux, não me apareceu as etapas: Ext2Explore e DiskInternal Linux Reader, mas acho que é isso mesmo. Obrigado pela atenção e parabéns pelo post.

    • Obrigado Edu Paz
      Vá até o forum XDA-developers.com. La tem uma caixa de texto onde pode descrever o modelo de seu aparelho e verificar as possibildades para ele.
      Tambem pode verificar a plataforma ( arquivos.jar) que utiliza como ferramentas para roms
      quanto aos apks se conseguir fazer root no seu aparelho tera acesso ao sistema. Estes apps ficam em system/app porem na maioria das roms ele possui o arquivo .odex
      exemplo: contatos.apk e contatos.odex

  2. olá cara blz? não sei se você está desenvolvendo no blog ainda, mas queria tirar uma duvida. estou com uma rom , no caso cm 12.1 para o galaxy j5 e ela tem bugs no microfone e no reconhecimento de sinal no chip, queria saber se existe um arquico para colocar nesta rom para estar arrumando?

  3. Eu estou buscando tutoriais para aprender a criar/modificar rom, o meu interesse é em aprender a partir do Marshmallow inclusive, pois nesta versão do Android o Google incluiu uma opção que considero das mais úteis que é a possibilidade de juntarmos o cartão de memoria (Classe 10) à memoria interna dos aparelhos, dando assim uma sobre-vida aos mesmos, mas todos os tutos que encontro ensinam no máximo até o Lollipop, assim como o Kitchen só dá suporte até o 4.2.2, a minha pergunta:, onde vou encontrar tuto para aprender sobre o Marshmallow e posterior?, voce pode me ajudar, me indicando o caminho a seguir, programar a utilizar, para iniciar meu aprendizado gostaria de criar/modificar uma rom Marshmallow para um aparelho da Samsung Galaxy SM-J200M, encontrei rom para variantes desse modelo, que tentei instalar mas como era de se esperar não funcionou nele. Quem por favor puder ler e me ajudar desde já fico muito agradecido.

Deixe um comentário