-
今天經(jīng)歷了行李另一名哦
查看全部 -
dex文件與java編譯的class文件關(guān)系。
dex文件中方法數(shù)超限解決
查看全部 -
bibisjiasub查看全部
-
查看全部
-
很好很好很好很好9
查看全部 -
自律學(xué)習(xí)打卡群招小伙伴加v行——studystudy199查看全部
-
這個(gè)要記下來(lái)@過(guò)兩天要記得看
查看全部 -
Android4.4以下版本采用Dalvik虛擬機(jī),4.4及以上采用ART虛擬機(jī)。
1,在java.vm.version < 2.0.0(Dalvik虛擬機(jī)),在App運(yùn)行過(guò)程中,Dex文件字節(jié)碼經(jīng)過(guò)JIT即時(shí)編譯器動(dòng)態(tài)的來(lái)編譯成可執(zhí)行的本地機(jī)器碼,之后再執(zhí)行,而且每次重新啟動(dòng)App都要經(jīng)過(guò)一次這樣的動(dòng)態(tài)編譯。這會(huì)導(dǎo)致應(yīng)用啟動(dòng)慢,運(yùn)行慢。
2,在java.vm.version >= 2.0.0(ART虛擬機(jī)),使用AOT提前編譯,在App安裝時(shí)就將Dex字節(jié)碼預(yù)編譯轉(zhuǎn)為本地機(jī)器碼(原生指令),生成一個(gè)可以在本地運(yùn)行的oat文件并存儲(chǔ)在本地。優(yōu)點(diǎn):?jiǎn)?dòng)快,運(yùn)行快,好點(diǎn)少。其在系統(tǒng)層面已經(jīng)支持了多dex文件的處理,在預(yù)編譯時(shí)合并為oat文件。
查看全部 -
Dex里的Method ID采用ushort類(lèi)型(兩個(gè)字節(jié))做標(biāo)記,范圍為0~65536,故方法數(shù)超限的數(shù)量為65536。
查看全部 -
java和kt編譯為class文件后用于JVM中運(yùn)行,由于手機(jī)上的內(nèi)存及處理器資源相對(duì)有限,google專(zhuān)門(mén)開(kāi)發(fā)了運(yùn)行在手機(jī)上虛擬機(jī)Dalvik/ART,而Dex文件是眾多class處理后的產(chǎn)物(經(jīng)過(guò)翻譯,重構(gòu),解釋?zhuān)ト哂?、壓縮等),用于在Dalvik環(huán)境下運(yùn)行。Dex與Dalvik虛擬機(jī)的關(guān)系,可以理解為exe文件與windows系統(tǒng)的關(guān)系。
各個(gè)class中包含對(duì)應(yīng)類(lèi)的信息,常量池,類(lèi)字段和方法等信息,dex則將這些class的數(shù)據(jù)進(jìn)行重新排布,同類(lèi)型的放置在一起。
查看全部 -
柔柔弱弱柔柔弱弱柔柔弱弱柔柔弱弱柔柔弱弱柔柔弱弱查看全部
-
啊啊啊啊啊啊啊啊啊查看全部
-
筆記筆記筆記筆記筆記
查看全部 -
扣扣密碼嗎查看全部
-
哦哦哦哦哦哦哦哦哦哦查看全部
舉報(bào)