แกะโค๊ด JAVA จากไฟล์ APK บน GOOGLE PLAY

กติแล้ว app android จะถูกคอมไพล์จาก JAVA มาเป็น .apk เรียบร้อย เพื่ออินสตอลงมือถือ แต่วันนี้เราจะเอา apk จากมือถือ มาแกะโค๊ดกลับไปเป็น JAVA ครับ ไปโหลดแอปมาตัวนึง ถูกใจมากเป็นเกมส์ธรรมดานี้แหละ แต่ผมเล่นสู้กับคอมไม่เคยชนะมันเลยสักตาเดียว เล่นมา 1 อาทิตย์เต็มๆ ก็ยังหาทางชนะไม่ได้สักที เริ่มเกิดความสงสัย ทำไมระบบAI มันเทพขนาดนั้น เอาเป็นว่าแกะโค๊ดดูเลยดีกว่าว่ามันเขียนระบบเอไอยังไง เริ่มจากต้องหาโหลดไฟล์ .apk (ซึ่งเป็นไฟล์สมบูรณ์ที่ถูกคอมไพล์มาเรียบร้อยเเล้ว ) มาจาก Google Play ไปที่เว็บนี้เลยครับ เค้าบริการให้ดาว์นโหลดไฟล์แอปเพียงแค่ใส่ link ลงไป โหลด APK http://apps.evozi.com/apk-downloader/ ทดลองกับ app นี้ละกัน แอป Locket ของ CEO สาวสุดสวย https://play.google.com/store/apps/details?id=com.locket.matterhorn โหลดแล้วเอาไปเก็บไว้ใน folder ชื่อ apk ในไดฟ์ C: จากนั้นให้ไปดาว์นโหลดไลบราลี่ dex2jar มาจาก https://code.google.com/p/dex2jar/wiki/Faq รัน command promte (CMD) จากโฟล์เดอร์ที่เก็บ dex2jar แล้วพิมพ์คำสั่งลงไป "dex2jar.bat C:\apk\name.apk " โดย name เป็นชื่อแอปที่เราโหลดมา ถ้าไม่มีปัญหาอะไร จะขึ้นข้อความประมาณว่า C:\apk\name_dex2jar.jar Done. แปลว่าเสร็จเเล้วครับ ที่เหลือก็แค่เปิด JAR จากโปรแกรมเช่น JD-GUI โหลดที่ http://jd.benow.ca/ เท่านี้ก็สามารถเปิดดู code java ได้เเล้ว ปล. เท่าที่สังเกต ตัวแปรต่างๆถูกกำหนดชื่อใหม่ เป็น a b c ว่าไป ปล. โค๊ดดูไม่ยาก แต่ syntax ไม่ได้ตรงไปซะหมด อ้างอิง : StackOverFlow

ความคิดเห็น

บทความที่ได้รับความนิยม