在 Android 设备上,直接运行 Dex 文件

  • Android,Android Dex,Dex文件,APK文件,Android编译

Java 虚拟机我们一般称为 JVM,我们把 Java 代码用 javac 编译成 class 文件后,交给 JVM 运行。

Android OS 上跑的虚拟机是 Dalvik,我们把 Java 代码编译成 class 文件后,再经过 dx 输出 dex 二进制文件,再交给 Dalvik 运行。

$ANDROID_HOME/build-tools/28.0.3/dx --dex --output=classes.dex HelloWorld.class

我们把输出的 dex 文件通过 adb 推送到手机上,然后可以用 dalvikvm 命令来运行 dex 文件。

:/sdcard $ dalvikvm -cp HelloWorld.dex HelloWorld
Hello World!

dalvikvm 除了接收 dex 文件外,还可以接收 zip 格式文件,要求是 dex 文件名必需是 classes.dex 。咱们的 APK 文件就是这样的。

原文阅读: 【连载】聊聊 APK——直接运行 Dex文件的黑魔法 https://mp.weixin.qq.com/s/69ndd2NCx27JWxJGEqTQBg

- EOF -

本文链接 https://spacepage.top/archives/2019.12.03-直接运行Dex文件.html,欢迎转载,转载请注明出处。

友情链接
网站统计
  • 网站已运行:42天
  • 文章总数:60 篇