IDEA创建Android项目并连接木木模拟器后反编译APK- 创建安卓项目
- 项目结构
- app/src/main/res/layout/activity_my.xml
- app/src/main/java/example/com/androiddemo/MainActivity.java
- app/src/main/AndroidManifest.xml
- app/build.gradle
- 连接木木模拟器
- IDEA构建生成APP
- 反编译APK
- 使用dex2jar反编译
- 使用Android killer反编译
- app/src/main/res/layout/activity_my.xml
- app/src/main/java/example/com/androiddemo/MainActivity.java
- app/src/main/AndroidManifest.xml
- app/build.gradle
- 使用dex2jar反编译
- 使用Android killer反编译
(本文在mac环境下走一遍流程) 一开始我是准备使用Android Studio(弱化版的IntelliJ IDEA),后来我查看了一下 800多MB,并且我已经安装配置过 IntelliJ IDEA 了,所以就不再下载AS,直接使用IDEA来创建安卓项目。
创建安卓项目
New一个Project,选择Android:
Next:
Next:
Next:
Finish.
如果之前零安卓环境,那看缺什么再装什么。
可浏览:《Android入门基础:从这里开始》
项目结构
刚创建的Android项目是一个基础的Hello World项目,包含一些默认文件,我们花一点时间看看最重要的部分:
app/src/main/res/layout/activity_my.xml
这是刚才用Android Studio创建项目时新建的Activity对应的xml布局文件,按照创建新项目的流程,Android Studio会同时展示这个文件的文本视图和图形化预览视图,该文件包含一些默认设置和一个显示内容为“Hello world!”的TextView元素。
app/src/main/java/example/com/androiddemo/MainActivity.java
用Android Studio创建新项目完成后,可在Android Studio看到该文件对应的选项卡,选中该选项卡,可以看到刚创建的Activity类的定义。编译并运行该项目后,Activity启动并加载布局文件activity_my.xml,显示一条文本:“Hello world!”
app/src/main/AndroidManifest.xml
manifest文件描述了项目的基本特征并列出了组成应用的各个组件,接下来的学习会更深入了解这个文件并添加更多组件到该文件中。
app/build.gradle
Android Studio使用Gradle 编译运行Android工程. 工程的每个模块以及整个工程都有一个build.gradle文件。通常你只需要关注模块的build.gradle文件,该文件存放编译依赖设置,包括defaultConfig设置
连接木木模拟器
1.打开Android Studio和网易MuMU模拟器
2.打开Android Studio的Terminal窗口,输入 adb connect 127.0.0.1:7555 如果没有配置 adb 的环境变量,那就找到他的绝对路径,比如 /platform-tools/abd 然后 /platform-tools/abd connect 127.0.0.1:7555
IDEA构建生成APP
首先介绍如何编译工程。 具体路径如下:build—>build Project.如 下图所示。
(如果没有error,则继续,有了百度解决下)
通过这种方法编译生成的APK保存的路径为: 该项目工程目录—>app–>build–>outputs—>apks下面。如下图所示。
上面所示生成的APK是调试版本,一般不能用于发布,正式版本需要选择如下路径。build—>Generate Signed APK.如下图所示。
当选择签名的APK时候,需要设置密码,设置好密码后,点击完成,将生成正式的APK,具体路径为:该项目工程目录—>app下面。
我修改了下 activity_main.xml,随便加了一点元素
然后再生成app。把生成的APK拖入到木木模拟器,发现正常安装。
反编译APK
使用dex2jar反编译
我使用手动修改了APK后缀,改为 app.rar,然后解压。
解压完成后找到 classes.dex 文件。把他放入 dex2jar-2.1 的目录中。 使用命令进行反编译。 sh d2j-dex2jar.sh classes.dex
把生成的 classes-dex2jar.jar 拖入 jd-gui 中。就能查看到代码了
使用Android killer反编译
直接将APK置入到配置好的Android killer中。