0

我想,现在问这个问题可能有点早。但是需要你对此的想法。

我阅读了有关ART模式(Android Runttime)的信息,如下所示,

“ART 是在 KitKat 4.4 版本中以实验性方式引入的新 Android 运行时。这是 KitKat 正在进行的工作的预览。它可用于获得早期开发人员和合作伙伴的反馈。”

但也请阅读,如果切换到 ART 模式,某些应用程序可能会崩溃。所以,我想知道,在编程时是否需要考虑任何设计目标才能在 ART 和 DVM 模式下运行我的应用程序?

4

1 回答 1

1

是的,当盲目假设您的应用程序将在 Dalvik 上运行时,您可能会遇到一些问题。因此,即使 ART 仍处于实验阶段,因此不应被普通用户使用,您可能需要考虑以下几点:

  • 动态 Dex 加载(如在 Facebook 应用程序中使用的)在运行时可能无法实现,因为 AOT 编译器在运行时可能不可用。
  • 因此,任何使用运行时字节码操作的东西,比如 Clojure,在 ART 上运行时都可能会遇到问题。
  • 根据这个线程和 Reddit 上的一些评论,Xamarin 也遇到了 ART 问题。

基本上,任何依赖于 Dalvik 特定功能的东西都可能导致崩溃。

更新显然,通过aot加载磁盘上的文件并缓存已编译的版本,使用 ART 加载 dex 可以正常工作。惊人的!:)

于 2014-06-03T16:16:13.467 回答