Cara Decompile dan Re-Compile APK Android

Kali ini ane maw ngasih tutor lagi nih, yahh itung-itung ngk ada kerjaan mending ane kasih tutor. Tutornya tentang cara decompile dan compile file apk. Cara ini yag saya lakukan buat edit xml, buat theme, dll.

Compile dan Decompile apk adalah dasar utama untuk dapat memodifikasi bahkan membuat Custom Rom. Maka dari itu, bagi yg ingin bisa membuat custom rom, maka kita harus bisa dasarnya terlebih dahulu.

Bahan2 yg perlu disiapkan :

  • Alat Tempur (APK Tool dan  APK Manager) : http://adf*ly/AJrAz
  • Framework-res.apk Stock
  • Twframework-res.apk Stock
  • File Apk yang mau ente edit
  • Niat dan kemauan
__________________________________________________________________________________
Bab I : Harus udah terinstall JDK atau JRE di Komputer sampean
  • Bisa kan kalo cuma donlod JDK trus diinstal di komputer? Gak usah dibahas lagi ya.. 
__________________________________________________________________________________
BAB II : Proses Penginstalan Framework (1 kali untuk selamanya)
  1. Extract ApkManager dan ApkTool kalo udah di dongdot. Taro di mana aja yg ente suka. (Misal : C:/ApkManager, dan C:/APKTool)
  2. Copy “Framework-res.apk” dan “twframework-res.apk” ke folder APKTool
  3. Lalu buka CommandPrompt.bat
  4. Ketik : “apktool if framework-res.apk” (tanpa tanda petik)
  5. Ketik lagi : “apktool if twframework-res.apk” (tanpa tanda petik)

(Catatan : Langkah ini hanya dilakukan di awal saja, seterusnya silakan gunakan APKManager)
Kalo framework 1 dan 2 udah diinstal, kita bisa gunakan APKManager untuk seterusnya.
_________________________________________________________________________________
BAB III : Proses Decompile
  1. Copy File Apk yg mau ente edit ke Folder “ApkManager/place-apk-here-for-modding/disini”
  2. Buka “Script.bat” yang ada di folder APKManager
  3. Kalo muncul tulisan “Adb was not found, you will not be able to manipulate the files on your phone. Press any key to continue . . .” Pencet enter aja. Akan muncul pilihan dari 0 sampe 24.
  4. Lalu ketik “22” untuk memilih apk yg akan kita decompile.
  5. Setelah ketik 22, maka akan muncul nama Apk yg ada di folder place-apk-here-for-modding. Tinggal ente pilih aja nomer berapa. Misal, kalo Cuma naro 1 apk, kita tinggal ketik “1”, tapi kalo ada lebih dari 1 apk di folder place-apk-here-for-modding, maka tinggal kita ketik nomer apknya yg tertera di pilihan.
  6. Kalo udah ditentuin apk yg mau kita decompile, lalu kita ketik “9”, dan proses decompile akan berjalan. Tungguin aja.
  7. Kalo udah selesai decompile, jangan di close dulu script.bat nya. Lalu buka folder “project”, disitu akan ada folder dengan nama apk yg telah kita decompile. Misal kita decompile SystemUI, maka akan muncul folder dengan nama SystemUI.apk disitu.
  8. Silakan ente edit isi dari folder itu, tapi ente harus inget apa aja yg udah ente edit, kalo bisa sih catet aja di notepad biar gak lupa (ini penting)

Sampe disini, proses decompile selesai. Silahkan grepe2 yg ada di folder project.
________________________________________________________________________________

BAB IV : PROSES RE-COMPILE

  1. Kalo udah selesai grepe2, buka lagi script.bat nya yg tadi di minimize, lalu ketik “11” untuk melakukan proses Re-Compile
  2. Kalo muncul pesan error "an error ocurred,please check the log<option21>" press ane key to continue...", cek lagi file yg ente edit tadi, berarti ada kesalahan pas lagi editing. Tapi kalo gak ada pesan error, lanjut ke langkah 3.
  3. Jika muncul tulisan “Is This System apk? (y/n)”, ketik : “y” lalu enter.
  4. Untuk kedua kalinya kita ketik “y” lagi lalu enter. Maka proses Re-Compile akan berjalan
  5. Lalu akan muncul tulisan “In the apk manager folder u'll find a keep folder. Within it, delete everything you have modified and leave files that you haven't. If you have modified any xml, then delete resources.arsc from that folder as well. Once done then press enter on this script. Press any key to continue . . .” JANGAN PENCET APA-APA DULU DISINI, BIARIN AJA. JANGAN DI CLOSE, DI MINIMIZE DULU.
  6. Buka folder “keep”. Lalu apus file “resource.arsc” Dan apus juga file yg tadi ente edit. Misal tadi ente ngedit “status_bar.xml”, maka status_bar.xml yg ada di dalam folder keep, harus ente apus. (inilah gunanya ane nyaranin supaya dicatet apa aja yg tadi abis di edit.)
  7. Kalo udah diapus, balik lagi ke script.bat yg tadi di minimize. Lalu ketik enter.
  8. Kalo muncul tulisan “Everythink is OK”, berarti berhasil
  9. Buka lagi folder place-apk-here-for-modding, nanti ada file namanya “unsignednamaapk.apk”. Kalo ente edit SystemUI, maka munculnya “unsignedSystemUI.apk”
  10. Tinggal di rename aja. Apus unsigned nya. Lalu push ke system.
  11. Selesai

________________________________________________________________________________

CATATAN :
  • Pada BAB IV saat proses Re-Compile terdapat pesan error, maka jangan dipaksakan ke langkah 3. Dijamin bakal error Apknya dan bisa menyebabkan FC.

  • Jika terjadi error, buka file "log.txt". Disitu tertulis dengan jelas dimana letak kesalahannya.

  • Di dalam folder keep, RESOURCE.ARSC HARUS DIHAPUS !!


  • Dan ada beberapa file yg tidak ada di folder keep. Misal ente edit string.xml atau style.xml yg adanya di folder res/values. Maka di folder keep gak akan ada folder values. Begini caranya :
  • Jika Edit file di folder values, cukup apus resource.arsc
  • Jika Edit file di folder smali, apus classes.dex

  • Untuk folder yg lainnya, silakan langsung menuju ke filenya. Tapi jangan apus file yg ente gak edit. Intinya, apa yang di edit, itu yg diapus.
________________________________________________________________________________
Maap kalo bahasanya agak rumit. Semoga bisa membantu agan2 dalam grepe2 apk.
Jangan takut untuk mencoba. Ane juga dulu gak bisa apa2. Asal ada niat dan kemauan, pasti kita bisa.

GUNAKAN GALAXY POCKET ANDA SEBAGAI BASIC DALAM MEMPELAJARI ANDROID. JIKA ANDA SUDAH TAU SELUK-BELUK ANDROID, SILAHKAN BERALIH KE DEVICE YG LEBIH MAHAL.

TALK LESS DO MORE. HAVE A SMARTPHONE, BE A SMART USER. KALO UDAH SMART, JANGAN PELIT-PELIT SAMA YG LAEN, TAPI JUGA JANGAN TERLALU BAIK.

Kalo ada yg kurang jelas, silakan ditanyakan disini.

Tutor ini saya sudah pake selama saya ngenal namanya edit-mengedit, jadi kalau ada yang error mohon periksa lagi apa yang anda edit tadi....!!!

DO WITH YOUR OWN RISK (D.W.Y.O.R)

SPECIAL BIG THANKS TO MEMBER GALYOUNG & GALPOCK

10 Response to "Cara Decompile dan Re-Compile APK Android"

  1. Fadholi says:

    Ijin kontrol D mas :D

    Anonim says:

    yang di maksud stock itu gimana ya??

    Unknown says:

    @Fadholi : silahkan.. :D

    @Anonim : stock itu bawaan pabrik gan..

    Anonim says:

    link apktool mati gan

    Anonim says:

    artikel kopas

    Blogging is the new poetry. I find it wonderful and amazing in many ways.

    Amazing blog and very interesting stuff you got here! I definitely learned a lot from reading through some of your earlier posts as well and decided to drop a comment on this one!

    Unknown says:

    Punya ane pas decompile kok an eror knpa ini gan?

    Anonim says:

    Om mau nanya? saya lagi coba mod game android tapi pas di decompile tuh gagal ada bacaan "An Error Occured, Please Check The Log (option 23)" padahal semua kriteria sudah terpenuhi, saya harus apa? Tolong di bales ya om kalo engga ke email aja ilpanpp@gmail.com

    Anonim says:

    Di lognya da bacaan kaya gini :
    --------------------------------------------------------------------------
    |Sat 01/02/2016 -- 15:25:42.96|
    --------------------------------------------------------------------------
    java version "1.8.0_66"
    Java(TM) SE Runtime Environment (build 1.8.0_66-b18)
    Java HotSpot(TM) Client VM (build 25.66-b18, mixed mode, sharing)
    I: Baksmaling...
    I: Loading resource table...
    Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file
    at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:56)
    at brut.androlib.res.AndrolibResources.getResPackagesFromApk(AndrolibResources.java:491)
    at brut.androlib.res.AndrolibResources.loadMainPkg(AndrolibResources.java:74)
    at brut.androlib.res.AndrolibResources.getResTable(AndrolibResources.java:66)
    at brut.androlib.Androlib.getResTable(Androlib.java:50)
    at brut.androlib.ApkDecoder.getResTable(ApkDecoder.java:189)
    at brut.androlib.ApkDecoder.decode(ApkDecoder.java:114)
    at brut.apktool.Main.cmdDecode(Main.java:146)
    at brut.apktool.Main.main(Main.java:77)
    Caused by: java.io.IOException: Expected: 0x001c0001, got: 0x00000000
    at brut.util.ExtDataInput.skipCheckInt(ExtDataInput.java:48)
    at brut.androlib.res.decoder.StringBlock.read(StringBlock.java:44)
    at brut.androlib.res.decoder.ARSCDecoder.readPackage(ARSCDecoder.java:102)
    at brut.androlib.res.decoder.ARSCDecoder.readTable(ARSCDecoder.java:83)
    at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:49)
    ... 8 more


    maksudnya kayak gimana ya om??

Posting Komentar

Powered by Blogger