Cara Decompile dan Compile di Android



Ada beberapa cara untuk decompile aplikasi di android, salah satunya menggunakan apktool. apa sih tujuan men-decompile aplikasi ini. tentu saja untuk keperluan kostumisasi atau modding dan development android guna memaksimalkan kinerja android kita. atau cuma sekedar memperindah tampilan user interfacenya saja, untuk melakukan semua itu kita perlu membongkar jeroan system dan aplikasi si robot ijo ini. kalo udah di bongkar, kita tinggal memodifikasinya sesuai kebutuhan kita, selesai memodifikasi kita harus meng-compile ulang aplikasi yg td kita decompile, agar bisa dipakai di android kita. Lalu bagaimana Cara Decompile dan Compile di Android ? berikut saya share cara mudah untuk decompile dan compilenya.

Apa yang kita perlukan untuk belajar menggunakan apktool ?
  1. Komputer/Laptop bersistem operasi Windows
  2. Koneksi internet. untuk download beberapa tool ini:
    a) JAVA SDK and JRE
    b) Android SDK
    c) Apktool core tool
    d) Sign apk tool
  3. Pengetahuan dasar tentang command promt / CMD windows dan lokasi(direktori) file / path.
  4. Bisa gunain Script Editor seperti notepad++

STEP 1 - Install JAVA
Install java sdk dan jre.

STEP 2 - Install Android SDK
Download android sdk disini http://developer.android.com/sdk/index.html
kalo udah di download,ekstrak ke tempat yg lokasi nya mudah. misal C:\Androidsdk
install android sdk nya.

STEP 3 - Download APKTOOL
download semua file diatas, dan taruh di dalam folder yang sama. disinilah nantinya kita akan melakukan decompile dan recompile.
Cara Decompile dan Compile di Android
Letak direktori/folder apktool

STEP 4 - Menggunakan APKTOOL untuk men-decompile Dan Recompile
- Buka folder dimana letak apktool yg td kita download.
- pencet shift dan klik kanan di folder tersebut. pilih "open command window here"
Cara Decompile dan Compile di Android
maka akan muncuk cmd/command promt.
- untuk contoh, saya akan mendecompile file SystemUI.apk , taruh file SystemUI.apk didalam
  satu folder dengan apktool.

- selanjutnya kita akan mendecompile file SyetemUI.apk menggunakan perintah :
  apktool d nama-aplikasi.apk
  contoh : apktool d SystemUI.apk
Cara Decompile dan Compile di Android

  kalau proses decompilenya sukses, maka akan muncul folder baru (sesuai nama apk yg kita decompile) di dalam folder tersebut terdapat file *.xml , *.smali yang nantinya akan di modifikasi sesuai kebutuhan.
Cara Decompile dan Compile di Android
Folder SystemUI yg terbentuk setelah decompile SytemUI.apk
- Karena disini saya hanya membahas cara decompile,dan recompile, jadi ya cuma itu yang saya bahas. anggap proses modifikasi/modding sudah selesai. selanjutnya adalah meng-compile ulang/recompile  file SystemUI.apk 
- Untuk proses recompile, lakukan dengan perintah : 
  apktool b nama-folder-app
contoh : apktool b SystemUI
Cara Decompile dan Compile di Android

setelah proses recompile sukses, maka file hasil modifikasi yg sudah di compile ulang akan tersimpan di dalam folder Dist. Folder Dist ini ada di dalam folder SytemUI (sesuai nama folder apps yg kita decompile)
hasilnya tersimpan disini :
Cara Decompile dan Compile di Android

kini anda sudah sukses men-decompile, memodifikasi, dan meng-kompile ulang sebuah aplikasi di android. :)
selanjutnya ke step terakhir. step paling penting. kalau anda melewatkan step 5 ini maka apps yg td kita modifikasi tidak akan berfungsi, bisa bisa setelah mem-push / menginstallnya HH kita bisa bootloop. :-p

STEP 5 - Signing apk
Download dulu sign-apk nya disini 
Ekstrak di sembarang tempat, yang penting mudah mengaksesnya.
pencet shift + klik kanan > "open command window here" pada folder sign-apk tadi.
copy kan file *.apk hasil modifikasi yang td sudah compile ulang ke folder yang sama dengan sign-apk
selanjutnya, ketikan perintah berikut di cmd : 
java -jar signapk.jar certificate.pem key.pk8 nama-aplikasi-recompile.apk nama-aplikasi-final.apk

keterangan : 
nama-aplikasi-recompile.apk : nama aplikasi hasil recompile sebelum di sign.
nama-aplikasi-final.apk : nama aplikasi hasil recompile setelah di sign.
  
contoh :
java -jar signapk.jar certificate.pem key.pk8 SystemUI.apk SystemUI-final.apk
Cara Decompile dan Compile di Android

setelah selesai, maka akan terbentuk file SystemUI-final.apk di dalam folder yang sama.
Cara Decompile dan Compile di Android

itulah aplikasi yang benar-benar sudah selesai dimodifikasi dan siap diinstall. :)
jangan lupa merename ke nama aslinya. misal SystemUI.apk dan push ke system untuk menginstallnya.
Done !

Previous
Next Post »

221 komentar

Tulis komentar «Terlama   ‹Lebih tua   201 – 221 dari 221   Lebih baru›   Terbaru»
abcdefghaniv
AUTHOR
2/10/14 15:01 delete

frameworknya udah di install belom ?

Reply
avatar
Unknown
AUTHOR
25/11/14 21:59 delete

ini kenapa ya gan??

[img]https://fbcdn-sphotos-e-a.akamaihd.net/hphotos-ak-xpa1/v/t1.0-9/10625024_10202711578824889_702082479334451666_n.jpg?oh=111409ee440859e6c7e68400bbbaae0b&oe=54DC8152&__gda__=1423683384_40f639ab1c390bb4a83b1833220b5d34[/img]

Reply
avatar
Unknown
AUTHOR
25/11/14 22:26 delete

C:\Users\BCA\apktool program>cmd
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\BCA\apktool program>apktool if framework-res.apk
I: Framework installed to: C:\Users\BCA\apktool\framework\1.apk

C:\Users\BCA\apktool program>apktool d SystemUI.apk
I: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\BCA\apktool\framework\1.apk
I: Loaded.
I: Regular manifest package...
I: Decoding file-resources...
W: Could not decode attr value, using undecoded value instead: ns=android, name=
color, value=0x02060002
W: Could not decode attr value, using undecoded value instead: ns=android, name=
color, value=0x02060002
W: Could not decode attr value, using undecoded value instead: ns=android, name=
textColor, value=0x02060004
W: Could not decode attr value, using undecoded value instead: ns=android, name=
color, value=0x02060002
W: Could not decode attr value, using undecoded value instead: ns=android, name=
textColor, value=0x02060004
I: Decoding values */* XMLs...
Exception in thread "main" brut.androlib.err.UndefinedResObject: resource spec:
0x010808f7
at brut.androlib.res.data.ResPackage.getResSpec(ResPackage.java:61)
at brut.androlib.res.data.ResTable.getResSpec(ResTable.java:58)
at brut.androlib.res.data.ResTable.getResSpec(ResTable.java:54)
at brut.androlib.res.data.value.ResReferenceValue.getReferent(ResReferen
ceValue.java:62)
at brut.androlib.res.data.value.ResReferenceValue.encodeAsResXml(ResRefe
renceValue.java:46)
at brut.androlib.res.data.value.ResScalarValue.encodeAsResXmlValueExt(Re
sScalarValue.java:86)
at brut.androlib.res.data.value.ResScalarValue.encodeAsResXmlValue(ResSc
alarValue.java:55)
at brut.androlib.res.data.value.ResStyleValue.serializeToResValuesXml(Re
sStyleValue.java:61)
at brut.androlib.res.AndrolibResources.generateValuesFile(AndrolibResour
ces.java:440)
at brut.androlib.res.AndrolibResources.decode(AndrolibResources.java:243
)
at brut.androlib.Androlib.decodeResourcesFull(Androlib.java:115)
at brut.androlib.ApkDecoder.decode(ApkDecoder.java:114)
at brut.apktool.Main.cmdDecode(Main.java:146)
at brut.apktool.Main.main(Main.java:77)

C:\Users\BCA\apktool program>

Reply
avatar
abcdefghaniv
AUTHOR
26/11/14 08:02 delete

coba baca logcatnya, sma install juga framework 2 nya, contoh :
- Samsung ROM (TouchWiz), framework 2 nya = twframework-res.apk
- Sony ROM, framework 2 nya = semcgenericuxpres.apk

Reply
avatar
Unknown
AUTHOR
2/12/14 16:22 delete

harus di root gak devicenya?
mohon pencrahannya..

Reply
avatar
abcdefghaniv
AUTHOR
2/12/14 16:45 delete

iya. wajib. punya android wajib di root

Reply
avatar
31/1/15 13:18 delete

Gan kenapa pada saat recompile kok gagal?

Reply
avatar
abcdefghaniv
AUTHOR
3/2/15 08:21 delete

pesan errornya apa ?

Reply
avatar
M
AUTHOR
17/2/15 18:33 delete

Gan biasanya kalo moding game itu gimana ? cara nyari coin / diamon ? hehe

Reply
avatar
abcdefghaniv
AUTHOR
18/2/15 15:57 delete

Belom pernah modding game. Di hanivinside lebih cenderung modding user interface.

Reply
avatar
Unknown
AUTHOR
28/7/15 22:01 delete

gan, kalau dari komputernya gimana deodex dan odex itu?

Reply
avatar
abcdefghaniv
AUTHOR
30/7/15 13:26 delete

pake tools namanya ultimate deodexer.

Reply
avatar
Unknown
AUTHOR
9/9/15 06:51 delete

Alhamdulillaah berhasil bro... makasih banyak yah smoga apa yg udh ente sampaikan n ajarkan dibalas kebaikan ma yg maha kuasa.. aamiin

Reply
avatar
Unknown
AUTHOR
21/11/15 01:58 delete

Gan, ane dapet error kaya gini :3
Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file 'blablabla'
Solusinya donk gan,

Reply
avatar
abcdefghaniv
AUTHOR
21/11/15 09:57 delete

coba pesan errornya yang lebih lengkap gan, kalo bisa kasi screenshootnya.

Reply
avatar
Unknown
AUTHOR
2/2/16 10:33 delete

Um mau nanya kalo brut di public tanpa harus ngikutin keinginan public apa bisa ?

Misal kalo ane pindahin png drawable-hdpi ke drawable-xhdpi nah itu brut di public yang drawable hdpi karna di pindahin ke drawable-xhdpi apakah ada solusi buat ngatasinnya tanpa harus ngikutin public terimakasih.

Reply
avatar
Unknown
AUTHOR
2/2/16 10:40 delete

Um kalo brut di public gimana ya tanpa harus ngikutin keinginan public misal ane mindahin png ke folder baru drawable hdpi ke drawable xhdpi nah brut nya itu di public hdpi apakah bisa ngatasin nya tanpa harus ngikutin public terimakasih

Reply
avatar
abcdefghaniv
AUTHOR
2/2/16 13:48 delete

setau ane mesti sesuai gan, kalo gak sesuai kadang bikin error pas dicompile.

Reply
avatar
Unknown
AUTHOR
25/4/16 11:22 delete

Gan numpang tanya dong ane coba decode apk pake apkstudio , terus apktoolnya 2.1.0 yang terbaru .. tapi ko kenapa pas decode apk selalu diakhir decode terdapat error di "error copying unknown files blabla .. klo folder2 lain sperti res, value xml dll bisa di decode ..
Terima kasih

Reply
avatar
abcdefghaniv
AUTHOR
26/4/16 08:55 delete

mau compile apa decompile ?
coba kasih screenshootnya

Reply
avatar
«Terlama   ‹Lebih tua   201 – 221 dari 221   Lebih baru›   Terbaru»

- Kritik dan saran sangat saya nantikan untuk kemajuan blog ini.
- Silakan report, jika ada link yang mati.
- Mohon untuk berkomentar sesuai dengan tema postingan.
- Dilarang berkomentar yang mencantumkan LINK AKTIF.
ConversionConversion EmoticonEmoticon