Android运行时(ART)工作正常吗?.dex文件发生了什么变化?

Android运行时(ART)工作正常吗?.dex文件发生了什么变化?,android,android-studio,Android,Android Studio,运行应用程序时.dex文件会发生什么情况? 为了测试这一点,我从“data/dalvic缓存”中删除了一个.dex文件[whatsapp],然后运行该应用程序。它工作得很好。 据我所知.dex文件是在安装应用程序时创建的。 我的问题是我们为什么需要.dex文件以及艺术如何使用它?是的。我的结论是,启动应用程序时,不会创建.dex文件。根据我的实验,我认为在dalvic缓存应用程序中没有.dex文件可以工作(但速度很慢),当我们重新启动系统时,android会优化应用程序并重新创建.dex文件。另

运行应用程序时.dex文件会发生什么情况? 为了测试这一点,我从“data/dalvic缓存”中删除了一个.dex文件[whatsapp],然后运行该应用程序。它工作得很好。 据我所知.dex文件是在安装应用程序时创建的。
我的问题是我们为什么需要.dex文件以及艺术如何使用它?是的。我的结论是,启动应用程序时,不会创建.dex文件。根据我的实验,我认为在dalvic缓存应用程序中没有.dex文件可以工作(但速度很慢),当我们重新启动系统时,android会优化应用程序并重新创建.dex文件。另外一件事是,在android虚拟现实中,现在没有Dalvic虚拟机。5.0或以上版本只有ART(替代Dalvic虚拟机)

是的。我的结论是,启动应用程序时,不会创建.dex文件。根据我的实验,我认为在dalvic缓存应用程序中没有.dex文件可以工作(但速度很慢),当我们重新启动系统时,android会优化应用程序并重新创建.dex文件。另外一件事是,在android虚拟现实中,现在没有Dalvic虚拟机。5.0或以上版本只有ART(替代Dalvic虚拟机)

猜猜看,你从缓存中删除了一个文件,然后重新创建了它…?如果你对java非常了解,那么你对JVM有了想法,就像Android有DVM dalvik虚拟机,它将代码转换为特殊字节码,存储在这个.dex文件中,意味着dalvik Executablow文件中,所以无论何时你运行应用程序,都和java应用程序一样,应用程序将编译并生成可执行文件,然后运行。@lelloman否。这就是问题所在。。它不会被重新创建。应用程序仍在运行。但我觉得现在有点慢了。我在氰模式。lolipop 5.1ok我想这只是一个猜测,你从缓存中删除了一个文件,然后重新创建了它…?如果你非常了解java,那么你就有JVM的想法,就像Android有DVM dalvik虚拟机,它将代码转换为特殊字节码,存储在这个文件中。dex文件意味着dalvik ExecutaBlow文件,所以,每当你像java应用程序一样首先运行应用程序时,应用程序将编译并生成可执行文件,然后再运行。@lelloman no。这就是问题所在。。它不会被重新创建。应用程序仍在运行。但我觉得现在有点慢了。我在氰模式。我想是Lolipop5.1ok