解析Android Webkit如何綁定Javascript引擎
Android Webkit如何綁定Javascript引擎是本文要介紹的內(nèi)容,主要是來(lái)了解并學(xué)習(xí)Android Webkit應(yīng)用,具體內(nèi)容的實(shí)現(xiàn)來(lái)看本文詳解。
有兩種方式可以控制在WebCore中使用哪個(gè)Javascript引擎。
1、設(shè)置Javascript_ENGINE變量。有兩個(gè)值:Javascriptc,v8。這是最方便的方式
2、如果Javascript_ENGINE變量沒有設(shè)置,或者設(shè)置的值不是Javascriptc,v8其中的一個(gè)的話,這個(gè)makefile會(huì)選擇一個(gè)默認(rèn)的引擎進(jìn)行編譯。
對(duì)于默認(rèn)引擎的選擇,主要取決于兩個(gè)變量ARCH_ARM_HAVE_VFP(是否支持VFP)和USE_ALT_Javascript_ENGINE(與安裝buildbot有關(guān),這里不考慮,略過)。如果ARCH_ARM_HAVE_VFP為true的話,系統(tǒng)默認(rèn)Javascript引擎選擇v8,否則選擇Javascriptc
引擎確定后,接下來(lái)把Javascript引擎編譯為.a靜態(tài)庫(kù)libv8.a(使用v8引擎)或libJavascript.a(使用Javascriptc引擎)
最后,編譯libwebcore.so
v8引擎位于/external/v8下面,編譯libwebcore.so時(shí)需要libv8.a。所以,如果是在/external/webkit下面使用mm的話,一定要確保v8已經(jīng)被編譯過了
另外,如果想在Android Webkit的JavascriptC中打開JIT的話,把環(huán)境變量ENABLE_JavascriptC_JIT設(shè)置為true
犯了個(gè)低級(jí)錯(cuò)誤:
- Javascript_ENGINE=v8
對(duì)上面這一句來(lái)說,v8后面不要帶空格,什么都不要帶,切記。。。
小結(jié):
解析Android Webkit如何綁定Javascript引擎的內(nèi)容介紹完了,希望通過本文的學(xué)習(xí)能對(duì)你有所幫助!