当前位置: 首页 > 面试题库 >

在APK上反编译.smali文件

汪翰墨
2023-03-14
问题内容

我下载了APK Manager,可以解压缩APK文件。

但它只会解压缩它,不会将.smali文件反编译为.java。

可以将.smali反编译为.java吗?


问题答案:

不,APK管理器反编译.dex文件导入.smali和二进制.xml到人类可读的XML。

序列(基于APK Manager 4.9)为 22, 以选择包,然后为 9,
以对其进行反编译。如果按1而不是9,则只需将其打开包装(仅在要交换.png图像时有用)。

没有可用的反编译工具.java,很可能不会。还有一种选择,它是使用 dex2jar
将dex文件转换为.class文件,然后使用jar反编译器(例如免费的 jd-gui
)转换为纯文本Java。但是,该过程远非最佳,它不会生成有效的代码,但足够好以至于可以读取它。

dex2jar:https://github.com/pxb1988/dex2jar

jd-gui:http://jd.benow.ca/



 类似资料:
  • 在一些网站上,我读过“使用一些反编译程序反编译apk是可能的”。(即)从apk文件中获取源代码。 但我想保护我的代码。反编译后不显示加密算法代码或者不想反编译我的apk文件。那有可能吗?请你给点建议好吗?

  • 我正在进行逆向工程/反编译APK文件-我能够使用: http://www.decompileandroid.com/ 我相信APK工具是一个更好的选择(我很想听听为什么),但在这个例子中,它起了作用——索塔。 我的问题——也是我的问题/帖子的根源:当我导入源时,我最终有超过4000个日蚀错误(谢天谢地,它们似乎只是少数重复多次的类似/相关错误)。 也就是说,有没有更好的方法来避免这些错误?(如下所

  • 我有一个android项目,其中既有Java的文件,也有kotlin的文件。 编译后,当我解压缩生成的apk文件时,我可以在它们的包路径中看到我的项目的所有Kotlin文件。然而,Java的档案并不存在。 我怎样才能修复这个问题,并阻止Koltin文件被添加到apk中? 谢谢 我的建筑。Gradle:

  • 问题内容: 我需要修改现有的APK,修改源,然后重新编译。 我可以使用dex2jar或apktool对其进行反编译,效果很好 从jar文件中,我可以获取Java源代码(使用jd-gui) 然后我可以修改Java文件 但是现在我想知道如何重新编译java文件并将它们放回jar文件中!(jar部分应该很简单,主要问题似乎是如何为Android重新编译Java文件) 我知道另一种解决方案是使用apkto

  • 主要内容:本节引言,1.要准备的三个工具,2.使用apktool反编译APK获得图片与XML资源:,3.使用dex2jar将classes.dex转换成jar文件:,4.使用jd-gui查看jar包中的Java代码:,本节小结本节引言 "反编译Apk",看上去好像好像很高端的样子,其实不然,就是通过某些反编译软件,对我们的APK进行反编译,从而获取程序的源代码,图片,XML资源等文件;不知道你有没有这样做过,看到一个别人的一个APP界面做得很精美,或者你看上别人的图片素材,简单点的,我们可以下载

  • 问题内容: 我目前正在从事一个项目,该项目要求我以编程方式将.class文件反编译为Java文件。IE我有一个程序,应该读取一个类文件并对其进行反编译,并将生成的Java源代码写入文件中。请帮我做。 编辑:我是反编译器世界的全新手。我已经看过一些API,但是我不知道到底该如何使用以及使用哪个API。任何形式的帮助将是非常可观的 编辑: 我尝试使用: 但是上面的代码只是在指定的目录中创建了一个名为“