Kamis, 20 Juni 2013

Decompile APK, Melihat Source Code Aplikasi Android dari Google Play

Decompile APK, Melihat Source Code Aplikasi Android di Google Play bisa dimanfaatkan untuk melihat kode program dari Aplikasi Android yang sudah dalam bentuk APK. Sebenarnya judul diatas terlalu "berani" hehe, karena sebenarnya tidak semua APK dapat dilihat semua bagian source codenya. Dan sepertinya ada cara untuk mengakali agar APK tidak dapat dicompile karena penulis pernah membuktikan sendiri beberapa buah Aplikasi Komersial dari Google Play tidak dapat di-decompile menggunakan decompiler apktool ataupun dex2jar. Atau hasil Kode Programnya berantakan

Pertama yang kita butuhkan tentu saja file APK dari Aplikasi Android yang bisa saja telah terinstall di Perangkat Handhone / Tablet kita. Untuk mendapatkannya anda bisa Menggunakan Aplikasi MyAppSharer untuk Mendapatkan APK dari Aplikasi yang sudah Terinstall seperti di artikel ini


Nah selanjutnya yang kita butuhkan adalah software apktool untuk mengekstrak file resources, gambar dan xml. Kemudian kita butuhkan juga aplikasi dex2jar untuk mendecompile file dex menjadi jar. Terakhir kita butuhkan aplikasi jd2_gui yaitu aplikasi pembaca source code dari file jar.

Download android-apktool dapat didownload disini. Kemudian dex2jar dapat didownload disini dan jd2_gui dapat diunduh disini.

Langkah pertama buat folder dengan nama decompiler, misalnya di D:\decompiler. Kemudian di dalamnya buat direktori apktool, dex2jar, jd2_gui, package dan result seperti ini :


Setelah itu ekstrak dan masukkan program yang anda telah download, yaitu android-apktool di folder D:\decompiler\apktool :


Kemudian dex2jar di direktori D:\decompiler\dex2jar :


Kemudian jd2_gui di folder D:\decompiler\jd2_gui


Untuk mempraktekkan cara decompile APK kita gunakan APK dari Project Android Camera Intent di artikel ini. Masukkan AndroidCameraIntent.apk di folder package :


Setelah itu buka DOS Prompt dengan cara klik Start-Run, kemudian ketikkan :

 cd \

 D:

 cd decompiler\apktool

 apktool.bat d D:\decompiler\package\AndroidCameraIntent.apk D:\decompiler\result\AndroidCameraIntent

Hasilnya :


Setelah itu ketikkan :

 cd D:\decompiler\dex2jar

 dex2jar.bat D:\decompiler\package\AndroidCameraIntent.apk

Jika terjadi error seperti ini, sepertinya RAM anda kurang besar :

Error occurred during initialization of VM
Could not reserve enough space for object heap

Maka buka file D:\decompiler\dex2jar\dex2jar.bat dengan Notepad kemudian edit pada baris berikut ini :

...
java -Xms512m -Xmx1024m -cp "%CLASSPATH%" "com.googlecode.dex2jar.v3.Main" %*
...

Menjadi :

...
java -Xms256m -Xmx512m -cp "%CLASSPATH%" "com.googlecode.dex2jar.v3.Main" %*
...
Kemudian simpan dan tutup, ulangi perintah berikut ini di DOS Prompt :

 dex2jar.bat D:\decompiler\package\AndroidCameraIntent.apk

Seharusnya hasilnya :


Terakhir hasil dari decompile dapat dilihat menggunakan Aplikasi jd2_gui, klik Open, buka file D:\decompiler\package\AndroidCameraIntent_dex2jar.jar Hasilnya :


Sedangkan file resources gambar dan xml dapat dilihat di direktori D:\decompiler\result\AndroidCameraIntent


Silakan digunakan untuk belajar dengan baik, jangan membajak karya orang lain, cukup pelajari tekniknya dan kita buat aplikasi sendiri sesuai ide dan kreatifitas kita.

File-file tool yang dibutuhkan dan contoh APK maupun hasil decompile dapat didownload disini. Jika kesulitan coba dibaca cara downloadnya disini.

 Semoga menyenangkan ^_^

11 komentar:

  1. kok g bisa ya?? apa masih salah ya?? apktoolnya kok g sama gambar, hasilnya tar, trus ane cari apk tool dr luar yg mirip kok g bisa ya???

    BalasHapus
    Balasan
    1. Seharusnya bisa. Coba dahulu dengan aplikasi sederhana, misal aplikasi buatan sendiri atau APK yang sudah disertakan di contoh yang bisa didownload di atas. Tetapi memang ada developer yang cukup pintar/canggih sehingga aplikasi tersebut tidak dikenali sebagai APK Android. Saya pernah coba mendecompile aplikasi dari salah satu bank dan gagal. Masih harus banyak belajar :)

      Hapus
  2. haduh gan mantaf kalo repack nya lagi ada gag tutor :d

    BalasHapus
  3. jd2_gui nya ga bisa di donlot min

    BalasHapus
  4. gan, cara import ke eclipse a gmna ya?
    ngegabungin smw a gitu, kayak xlm, java dsb.....
    kalo boleh krim ke email aja gan jwban a...
    thanks ya gan...

    mirzaamrizal@gmail.com

    BalasHapus
  5. apktoolnya kok g sama gambarnya sama file yang hasil download ya gan?mohon info gan

    BalasHapus
  6. wah sdh diremove tuh toolAPK
    mohon dshare lagi tmp download yg lain gan ...APKtool sdh tidak ada

    BalasHapus