我有一个使用Xamarin Forms开发的应用程序,需要调用JavaScript并使用其结果。在iOS上,我通过JavaScriptCore解决了这个问题,在Win10上使用Chakra(我认为在Win8.1上也可以使用ChakraCore)。但是我希望在Android中使用V8 JavaScript引擎,但我不知道如何在Xamarin中使用它。
是否有方法可以使用它呢?
我有一个使用Xamarin Forms开发的应用程序,需要调用JavaScript并使用其结果。在iOS上,我通过JavaScriptCore解决了这个问题,在Win10上使用Chakra(我认为在Win8.1上也可以使用ChakraCore)。但是我希望在Android中使用V8 JavaScript引擎,但我不知道如何在Xamarin中使用它。
是否有方法可以使用它呢?
https://github.com/web-atoms/xamarin-v8
添加 NuGet 包。 <PackageReference Include="Xamarin.Android.V8" Version="1.4.79" />
代码
using(var context = new JSContext( /*Enable Debugging*/ true)) {
// you can connect to dev tools by visiting url
// devtools://devtools/bundled/inspector.html?experiments=true&v8only=true&ws=127.0.0.1:9222/backend
context["printf"] = context.CreateFunction(0, (c, a) => {
// first parameter is context isself
// second parameter is an array as IJSValue
System.Diagnostics.Debug.WriteLine(a[0].ToString());
return c.Undefined;
});
// script location is useful for debugging
context.Evaluate(scriptText, scriptLocation);
}