Skip to content

TIIEHenry/ScriptWrapperCollection

Repository files navigation

ScriptWrapperCollection

这是基于ScriptWrapper的已经适配的脚本引擎

目录

Language Name Repo State
javascript rhino Rhino 完全适配
javascript v8 J2V8 基本适配
lua androlua+ AndroLua_pro 完全适配

使用说明

使用上都大致相同

ScriptWrapper提供了ScriptEngineManager,可以通过ScriptEngineManager获取ScriptEngine,这里用Factory

Create Engine

val engine=RhinoEngineFactory.newScriptEngine().apply{
    create()
    //...
}

Use requirer

engine.requirer.addFindPath([App.srcDir])
engine.requirer.require("module.js")

Use Bridge

val a=engine.varBridge.get("a")?.getString()
val f=engine.funcBridge.get("sum")?.call(1,2)?.getInteger()

Use Evaluator

val a=engine.stringEvaluator.eval("var a=1+2\nreturn \"ok\"","scriptName",0)?.getString()
val a2=engine.fileEvaluator.eval(file)?.getString()
val a3=engine.readerEvaluator.eval(FileReader(file))?.value

About

a script engine wrapper framework for android

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published