如何将ByteArray作为参数传递给使用J2V8的函数

问题描述 投票:0回答:1

我正在尝试使用Android上的J2V8库来调用javascript函数并将参数传递给它。下面的代码是我所拥有的,但无法弄清楚如何将bytes ByteArray传递给被调用的函数。

private fun decodePbfBytes(bytes: ByteArray?){
    val params = arrayOf(bytes)
    val v8 = V8.createV8Runtime()
    var v8Array = V8Array(v8) //how do I add bytes to this?
    val fileContents = MyApp.sharedInstance.assets.open("pbfIndex.js").bufferedReader().use { it.readText() }
    v8.executeScript(fileContents)
    val result = v8.executeStringFunction("", v8Array)
}
javascript kotlin j2v8
1个回答
0
投票

尝试一下:

var buffer = V8ArrayBuffer(bytes, bytes.size)
var v8Array = V8TypedArray(v8, bytes, V8Value.BYTE, 0, 2)
V8Array(v8).add("v8Array", v8Array)

...
V8Array(v8).push( v8Array)
© www.soinside.com 2019 - 2024. All rights reserved.