Android手机的apk文件中的class.dex文件是什么?是做什么用的呢?
7个回答
展开全部
简单说就是优化后的android版.exe。每个apk安装包里都有。相对于PC上的java虚拟机能运行.class;android上的Davlik虚拟机能运行.dex。
作用
让dalvik能够运行。
dex好处
可以直接用DexClassLoader类加载,动态加载。于是只要在dex上加壳,在程序运行时脱壳,就可以规避静态反编译的风险。
扩展资料
使用dex文件的原因
在Android系统中,一个App的所有代码都在一个Dex文件里面。Dex是一个类似Jar的包,存储了很多Java编译字节码的归档文件。
因为Android系统使用Dalvik虚拟机,所以需要把使用Java Compiler编译之后的class文件转换成Dalvik能够执行的class文件。
展开全部
Dex是Android系统中可以在Dalvik虚拟机上直接运行的文件格式。java源代码经过ADT的复杂编译后转换成Dex文件,这是一个逐步优化的过程。Dex文件的指令码就是Dalvik虚拟机专有的一套指令集,专门为嵌入式系统优化过,相比标准java的.class文件,它体积小,运行效率高。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dx工具的作用是将.class转换为dex文件,因为Dalvik虚拟机所执行的程序不是标准的Jar文件,而是将Jar文件经过特别的转换以提高执行效率,而转换后的文件就是dex文件。dx工具是Android源码的一部分,其路径是在out目录下
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class.dex是你编译成apk之后的所有的类文件,包括所有的资源文件。就是android能认识的编码,有他android才能知道你要干什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
classes.dex具体是什么不是很清楚,但是你开发android时有时候需要反编译apk了解apk,则可使用 dex2.jar 工具反编译 classes.dex 文件,生成 classes.dex.dex2jar.jar 包,然后使用 jd-gui 工具查看编译出来的 jar 包,查看apk内部目录及一些代码
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询