我正在使用Cordova + Webassembly开发应用程序。
客户需要该应用程序才能在Windows和Android上运行。 我正在使用Visual Studio 2017 + TACO。
该Web程序集是使用emscripten从C / C ++代码生成的,并且可以在Edge和Chrome上正常运行。它还可以在Android设备(Chrome)上运行
在Windows上运行的Cordova应用程序运行正常。
现在我的问题是在Android上。 Android上的Cordova应用程序记录此错误:
Fetch API cannot load file:///android_asset/www/script/myApp.wasm. URL scheme "file" is not supported.
Cordova是否在Android上支持WebAssembly,我找不到任何地方。我的理解是Android正在使用WebView组件,并且应该依赖Google Chrome(我的Webassembly在Android上的Chrome上运行正常)。 在某处可以在Android上为Cordova添加mime类型的选项吗?
在此先感谢您的帮助。
答案 0 :(得分:1)
如您在控制台中看到的那样,“ URL方案必须为CORS请求的“ http”或“ https”。”
答案 1 :(得分:1)
还有一个使用XMLHttpRequest
对象的选项,如https://studiolacosanostra.github.io/2020/02/23/How-to-run-rust-wasm-on-cordova/所示。
当然,您不需要像那里那样覆盖fetch
函数,但是您当然可以使用该思想来创建自己的函数。