jon*_*eri 7 ios javascriptcore swift wkwebview webassembly
我正在尝试.wasm从基于 Swift 的 iOS 应用程序中加载和执行 WebAssembly 。我首先尝试使用JavaScriptCore 框架,但是WebAssembly.*当我尝试评估一个简单的脚本时,该模块在上下文中不可用。我能够确认WebAssembly未通过 Safari 调试器控制台定义。
然后我尝试使用 WKWebView,因为我相信缺乏WebAssembly是由于JSC 不支持WKWebView 应该支持的JIT。我得到了同样的结果。
这是一个在 iPhone X 12.4 模拟器、Xcode 10.3 和手动添加到项目的 WebKit 框架上运行的简单应用程序。确保打开 Safari 并为 WKWebView 调试器选择“Developer>Simulator”。
import UIKit
import WebKit
class ViewController: UIViewController {
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func onClick(_ sender: UIButton) {
let testWasm = """
if(typeof WebAssembly !== 'undefined') {
console.log("Hello, Wasm.");
} else {
console.log("No Wasm for you!");
}
"""
webView.evaluateJavaScript(testWasm)
}
}
Run Code Online (Sandbox Code Playgroud)
iOS 真的有办法将 WebAssembly 加载到基于 Swift 的应用程序中吗?
我想使用 JSC 运行一些基准测试,以将其与 Wasm3 进行比较。
基本上我遇到了同样的情况,到目前为止还无法修复。
Wasm3在 iOS 上运行得非常好,可能适合您目前的需求。
目前,根据此评论,您无法在模拟器上使用 JSC 运行 WebAssembly 。
| 归档时间: |
|
| 查看次数: |
3439 次 |
| 最近记录: |