安卓反编译出来的代码如何修改重新生成APK?
如果要修改源代码,首先要拿到源代码。
如果你能我不明白,你不明白。;对于iOS来说就不用考虑了(反编译就是可以得到二进制文件,有兴趣可以尝试修改二进制文件)。你可以不要修改它。
对于Android来说,可以将apk反编译回代码,但是Android开发者通常会在发布前采取一些反反编译措施(比如代码混淆),所以你得到的代码可读性可想而知……
反编译修改这种行为很可能构成侵权。请尊重每一位开发者,无论是出于学习目的还是其他目的。
为什么有些apk反编译后闪退?
这种情况的可能原因:
1.可能的操作问题。您可以重启手机或电脑。
2.可能是没有足够的内存来接收新信息。软件可以用来清理垃圾,释放内存。
3.可能是下载的软件损坏了。原来的软件可以卸载,然后下载并重新安装。
4.也许日期或时间是错误的。你可以检查一下日期和时间,看看是否正确。如果日期和时间不正确,将导致网络错误。
5.也有可能是软件服务器有问题,只需要一段时间就能恢复。
apk反编译后smali文件怎么查看?
1.首先,你得下载SublimeText2。安装后,需要为其安装一个插件包。3.点击立即安装按钮进入,然后复制相应版本下的代码。4.打开SublimeText,按快捷键ctrl~,或者打开菜单栏视图,点击隐藏控制台,显示控制台。将步骤3中复制的代码粘贴到控制栏中,按Enter确认,然后重新打开SublimeText5,打开SublimeText。我们可以看到在Preferenc:安装包"在弹出的框中,会弹出一个提示,然后直接输入smali7。当你找到它,点击线"斯马利"直接,就安装好了,几分钟就好了。可以随意打开反编译apk文件中的Smali文件,自带亮点!
如何使用apktool.jar进行反编译?
1.下载反编译工具需要下载四个工具:dex2Jar,JD-GUI,apktool,apktool-Install-Windows-R05-ibotdex2Jar:将APK的文件转换成jar文件。JD-GUI:反编译工具,可以直接查看Jar包的源代码。Apktool:反编译工具,在apk中反编译XML文件可以直接查看。Apk工具-安装-windows-r05-ibot:辅助windows批处理工具。
2.解压apk包apk文件也是常见的zip,常用的压缩软件可以轻松解压APK文件。用压缩软件将apk文件中的文件解压到一个文件夹中,APK的资源有XML文件和文件,用java文件编译,用dx工具打包。
3.反编译dex文件,解压apk文件后,你会发现res目录下的图片并没有加密,而是把java源代码编译成了一个文件,这是普通反编译class文件无法处理的。dex2jar可以将dex文件转换成普通的jar包。将下载的dex2jar解压,将解压后的文件夹放入系统盘和目录中,并将此目录添加到系统path变量中,这样就可以直接使用或者转换dex文件了。DOS行命令如下:(xx是文件所在的路径)。你会得到同一个目录下的常用jar包:classes_dex2jar.jar,所以你可以通过处理常用jar包来反编译这个jar包得到原始文件。
4.反编译jar包得到jar包后,下载你喜欢的反编译工具。推荐使用JD-GUI。它有一个相对简单的图形界面,反编译单个类文件或jar包很方便。打开压缩文件JD-GUI,运行jd-gui.exe,打开上面生成的jar包查看源代码。
5.反编译xml文件并打开解压缩的reslayout目录。有许多xml文件。如果你想看看作者是怎么设计界面的,你会失望的,因为你看到的是一大堆!这个时候我们需要的是apktool。具体操作方法:将下载的apktool和apktool-install-Windows-R05-ibot解压到同一个文件夹中,其中包含三个文件:aapt.exe,apktool.jar将此文件夹放在系统盘的根目录下,并将此目录添加到path变量中。以HelloWord.apk为例:输入:apktoolDxxHelloWord。在DOS命令行apkhelloword获取helloword文件夹,而这个文件夹中的xml文件就是可以正常查看的编译文件。这样就获得了可以编译的源代码和XML资源。注意:文件的路径中最好不要出现中文!