Android는 많은 프로그래밍 언어를 사용하는 운영 체제입니다. 가장 일반적인 언어는 Java(원하는 경우 Android Java), C, XML, Bash 등입니다. Android 애플리케이션은 APKTool 및 몇 가지 유사한 도구를 사용하여 디컴파일할 수 있으며 출력은 Smali입니다. 많은 분들이 제 의견에 동의하지 않으실 것이라는 점을 알고 있습니다. 하지만 Smali는 Java보다 훨씬 복잡한 언어입니다.
Smali를 다시 Java로 변환할 수 있는 두 가지 도구가 있습니다: Dex2Jar 및 JAD. 하지만 사용하기가 매우 어렵고 올바르게 사용하려면 약간의 경험이 필요합니다. 다행히 XDA가 인정한 개발자 무리판1337 우리를 위해 모든 작업을 수행하는 간단한 bash 스크립트를 만들었습니다. 이 스크립트는 필요한 모든 종속성을 얻을 수 있을 뿐만 아니라 APK에서 바로 Java 코드를 가져올 수도 있습니다. Linux에서만 작동하지만 Cygwin이 설치된 Windows와 같은 UNIX 계열이 아닌 시스템에서도 사용할 수 있다고 확신합니다. 개발자는 파일을 ~/bin에 넣고 실행 가능하게 만들 것을 권장합니다. 추가 지침은 스레드에서 확인할 수 있습니다.
때로는 스크립트가 삶을 훨씬 더 쉽게 만들어 줄 수도 있습니다. 해당 프로젝트에 관심이 있으시면, 원래 스레드 더 많은 정보를 얻고 어셈블러 코드를 Java로 변환하는 방법을 배우십시오.
참고: 이와 같은 도구는 교육 목적으로 사용해야 합니다. 애플리케이션(유료 또는 무료)에서 코드를 "대여"하는 것은 비윤리적이므로 이루어져서는 안 됩니다. 그들은 이유 때문에 비공개 소스입니다. 이를 명심하십시오.