- JavaScriptCore
https://trac.webkit.org/wiki/JavaScriptCore
JavaScriptCore是一个在WebKit中提供JS引擎的开源框架,使用C语言编写,因此在Android开发中并不能直接使用。Github上的开源项目AndroidJSCore能够帮助开发者经过调用Java接口而使用JavaScriptCore。
https://github.com/ericwlange/AndroidJSCore
- V8
https://developers.google.com/v8/
V8是由Google开发并维护的高性能开源JS引擎,采用C++编写,使用于Google Chrome浏览器。同JavaScriptCore一样,在Android开发中,相关接口需要通过一层包装进行调用。Github上的开源项目J2V8
https://github.com/eclipsesource/J2V8
- Rhino
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino
Rhino是由Mozilla开发的开源JS引擎。采用Java编写,因此可以直接调用,在JDK 6、JDK 7中更是捆绑了该引擎。
所以,目前在Android中有三种可选的开源方案,JavaScriptCore+AndroidJSCore、V8+J2V8和Rhino。
参考文章:
https://neyoufan.github.io/2016/12/23/android/Android%20Js引擎/在Android上使用JS引擎是一种什么样的体验?/
https://www.oschina.net/translate/how-to-choose-a-javascript-engine-for-ios-and-android-apps