【问题标题】:How to view Dalvik bytecodes for my app in Android Studio?如何在 Android Studio 中查看我的应用程序的 Dalvik 字节码?
【发布时间】:2016-01-12 04:17:24
【问题描述】:

是否可以在 Android Studio 中查看我的应用程序的 Dalvik 字节码?如果有,怎么做?

更新:

我的应用是使用 Android Studio 用 Ja​​va 编写的,我想在 Android Studio 中查看我的 Java 类字节码,也称为 Dalvik 字节码(不是源代码)。

【问题讨论】:

  • 什么意思?您可以打开类文件。此外,当您单击代码中属于没有源代码的类的函数时,它会反编译并显示该类的“骨架”
  • 我的应用是使用 Android Studio 用 Ja​​va 编写的,我想在 Android Studio 中查看我的 Java 类字节码,也称为 Dalvik 字节码(不是源代码)。
  • 您可以打开 $your_project/build/intermediates/classes 下的文件。然而,作为一项功能,Android Studio 会尽可能地向您显示源代码,或者如果不是,则反编译它。您可能会尝试更改文件扩展名,或者更容易在任何愚蠢的文本编辑器中打开它,在十六进制编辑器中更好。但是你为什么要这样做呢?
  • @Gavriel,我尝试使用文本编辑器在 $my_project/build/intermediates/classes 中打开我的 MainActivity.class,但我没有看到任何 Dalvik 字节码。仅供参考 Dalvik 字节码看起来像 [this] (source.android.com/devices/tech/dalvik/dalvik-bytecode.html)
  • 那么你看到了什么?

标签: android android-studio dalvik


【解决方案1】:

现在可以直接从 Android Studio 检查字节码(自版本 3.0 Canary 1 起)。转到构建-> 分析 APK...,选择您的 APK 文件。导航您感兴趣的类,右键单击它并选择“显示字节码”。如果您的 APK 文件是使用 Proguard 生成的,您也可以使用映射文件。

【讨论】:

  • 您好,有什么方法可以快速显示文件的字节码?现在我必须单击右键,然后单击“显示字节码”来查看文件,如果我必须检查字节码中的大量文件,那就太慢了。
  • 有什么方法可以快速找到我的班级?我有大约 16 个 classes.dex 文件
【解决方案2】:

您的应用程序的 apk 包包含文件 classes.dex,您可以使用 baksmali 等工具反汇编该文件以获取 Dalvik 字节码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-06
    • 2012-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-02
    • 1970-01-01
    相关资源
    最近更新 更多