How to decompile Google Android .apk file as readable dump【原创】

简介: How to decompile Google Android .apk file as readable dump【原创】

Background :google android SDK platform provide emulator & ADB utility tools,it's very useful to


decompile the apk file to dump byte readable file.



Summary:


if you are ready for it, the sequences as following,



  - create/launch emulator from command line


  - launch the ADB utility tool from command line


  - install apk file from local directory from command line


  - list all system application apk file from command line


  - dexdump selected .dex file from emulator


  - pull dump file to local directory



Detail Section:


 


   step 1: create your own emulator if you still not create one and then launch the emulator


               launch the windows command line console, then chnage root directory to your android


               SDK Platform/tools directory, for me


               C:/>cd /d D:/android-sdk-windows/tools


               D:/android-sdk-windows/tools>android create -avd -n my_android1.5 -t 2


               D:/android-sdk-windows/tools>emulator -avd  my_android1.5


   step 2: after emulator launched, go to windowns console to start ADB Shell utility tool


               make sure your emulator is running before you start ADB. if it's successful


             D:/android-sdk-windows/tools>adb shell

               # cd /system/app

               cd /system/app

               # ls

               ls

               Mms.apk

               ApplicationsProvider.apk

               GlobalSearch.apk

               Calculator.apk

               SpareParts.apk

               GestureBuilder.apk

               Music.apk

               SdkSetup.apk

               PackageInstaller.apk

               Fallback.apk

               SettingsProvider.apk

               DrmProvider.apk

               Development.apk

               TelephonyProvider.apk

               PinyinIME.apk

               HTMLViewer.apk

               Settings.apk

               NetSpeed.apk


              if you want to see how many user applications have been installed on your emulator, just


              cd /data/app,and then ls



               step 3: install your apk file using adb shell commands, if you still not install your application


               on emulator


               D:/android-sdk-windows/tools>adb install D:/android-sdk-windows/tools/a.apk


               after install successfully, you will see your apk file using above command line



              step 4: get the cached dex file from your emulator, we have to enter dalvik VM cache using command


              # cd /data/dalvik-cache


              # ls                              


              ..........                          


              data@app@a.apk@classes.dex



              step 5: use dexdump file to generate the dump file then use pull command to copy to local directory


              #dexdump -d -f -h data@app@a.apk@classes.dex >> a.apk.dump



finally you will get a bit-readable dump file, based on dalvik class format knowledge, the more you dig


the more you get. normally *.apk file is a .zip file, could be open by any winzip tool.

Reference: SDK platform documentation

相关文章
|
1月前
|
安全 算法 小程序
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
132 28
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
|
2月前
|
移动开发 安全 Java
Android历史版本与APK文件结构
通过以上内容,您可以全面了解Android的历史版本及其主要特性,同时掌握APK文件的结构和各部分的作用。这些知识对于理解Android应用的开发和发布过程非常重要,也有助于在实际开发中进行高效的应用管理和优化。希望这些内容对您的学习和工作有所帮助。
284 83
|
2月前
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
112 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
3月前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
73 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
8月前
|
Java Android开发 Windows
使用keytool查看Android APK签名
本文介绍了如何使用Windows命令行工具和keytool查看APK的签名信息,并提供了使用AOSP环境中的signapk.jar工具对APK进行系统签名的方法。
616 0
使用keytool查看Android APK签名
|
8月前
|
Android开发
将AAB(Android App Bundle)转换为APK
将AAB(Android App Bundle)转换为APK
397 1
|
8月前
|
开发工具 Android开发
上架Google Play报错:For new apps, Android App Bundles must be signed with an RSA key.
上架Google Play报错:For new apps, Android App Bundles must be signed with an RSA key.
202 1
|
8月前
|
Android开发 开发者
Android、Flutter为不同的CPU架构包打包APK(v7a、v8a、x86)
Android、Flutter为不同的CPU架构包打包APK(v7a、v8a、x86)
577 1
|
存储 Android开发
|
1月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
274 76

热门文章

最新文章