簡體   English   中英

使用Art代替Dalvik進行編譯

[英]Using Art instead of Dalvik to compile

我正在使用Eclipse,並且有一個使用android版本21(5.0)的新項目。 我想使用Art而不是Dalvik進行編譯。 我必須要做些什么?

編輯:問題的原因是我有這個問題:

[2014-11-12 10:30:49 - Dex Loader] Unable to execute dex: method ID not in [0, 0xffff]: 65536
[2014-11-12 10:30:49 - MAMUT] Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536

我期望比解決問題更有效:

特別值得一提的是建議進行minSdkVersion 21開發構建-這允許您以新的ART格式增量生成多dex輸出,從而加快了開發迭代周期(至少在Android 5.0設備上)。

謝謝

I want to compile it using Art instead of Dalvik. 

Art和Dalvik不是編譯器,它們是虛擬機。 他們執行了編譯器(您的應用程序)生成的字節碼

特別值得一提的是建議進行minSdkVersion 21開發構建-這允許您以新的ART格式增量生成多dex輸出,從而加快了開發迭代周期(至少在Android 5.0設備上)。

錯了,應該大致閱讀

特別要注意的是,建議將Android Build Tools 21.1及更高版本Multidex支持庫一起使用-這使您可以使用完全不變的dex格式的多個dex文件,從而實現不變的開發。

dex格式的問題是它不能包含超過65536個方法。 解決方案是將輸出簡化為多個dex文件。 我們過去有2個問題

  • dx工具無法生成多個dex文件
  • 在設備上使用多個dex文件非常復雜,因為設備僅加載1個dex文件,而其他文件中的代碼則必須手動加載。

構建工具21解決了第一個問題,您只需將-multi-dex標志添加到編譯選項中,即可簡單地生成多個dex文件。

multidex支持庫解決了第二個問題。 它告訴那些設備如何加載其他dex文件。 而且,Lollipop及更高版本(4.4也具有ART,但不能做到這一點)上的ART運行時能夠使用多個文件,而無需告知操作方法。

與此相關的還有《超過65K方法的官方建築應用程序》文檔。

只是您需要運行ART的仿真器或真實設備。

檢查以下內容: https : //developer.android.com/guide/practices/verifying-apps-art.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM