学习android这些天,学会反编译后顿时伤心了

                学习android好多年,学会反编译后顿时伤心快哭了了,oh my God !! 自己亲手试着反编译自己的APk 后竟然可以看到自己的布局

              哎呀,学习android好多年,一下回到解放前啊,写本文的目的是在于学习android的开发技术,请同学们不要有非分之想,等哪天我把QQ给破解了,死心吧,这个不可能的,其实现在好多牛逼的公司,人家是会在发布前给自己的APK进行反编译进行加密的。下面就看看简单的反编译步骤吧:

一、反编译得到Apk 得到java的源码

        在得到源码之前需要下载dex2jar 和JD-GUI 

         dex2jar:用于将APK中的class.dex转换成jar包文件                                                     下载地址如下:点击打开链接

         JD-GUI :是一个反编译工具,可以直接查看Jar包中的源代码                                     下载地址如下:点击打开链接

  反编译步骤如下:

   1.将要反编译的APK的后缀名改为 zip,或者直接解压APK,复制其中的class.dex ,进入下载好的dex2jar,将复制的class.dex 粘贴在dex2jar.bat  所在的目录

   2.在DOS下运行,开始--cmd--进入dex2jar.bat 所在的目录,执行命令 dex2jar.bat   classs.dex  这个命令dex2jar.bat dex2jar.bat 主要是生成class.dex.dex2jar.jar 文件

反编译成功后的文件如下:

3.运行JD-GUI中的jd-gui.exe可执行文件,打开文件所在的目录class.dex.dex2jar.jar 就可以看到源码了

这个方法生成的源代码貌似有点缺陷,可以发现是*.class 的文件,具体怎样把class文件反编译成java文件呢,这个你懂得的,百度吧。

二、反编译apk生成程序的源代码和图片、XML、资源文件

        这个方法相对比较好一点,但还是需要工具apktool:下载地址如下:点击打开链接,需要下载apktool1.5.2.tar.bz2apktool1.5.2.tar.bz2这两个文件

 

 反编译步骤如下: 

1. 解压文件在不同文件夹可以得到一下3个文件:aapt.exe,apktool.bat,apktool.jar

2.将要编译的Apk放在C盘中,Dos下进入apktool.bat所在的文件夹  执行 apktool.bat d c:\YingshiDemo.apk

ps: apktool  d  [apk文件名]  [输出的文件名(不写默认在apktool.bat所在的文件夹中)]

反编译的效果如下:布局文件如下:

 


posted @   程序员Android的博客  阅读(55)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示