Flutter Web编译Wasm后kIsWasm始终返回false的问题求助
Flutter Web编译Wasm后kIsWasm始终返回false的问题求助
大家好,我最近尝试把我的Flutter Web应用编译成支持WebAssembly(Wasm)的版本,过程是跟着官方的Wasm文档操作的,但碰到了一个棘手的问题:常量kIsWasm始终返回false。
我在应用的初始页面里写了这段测试代码:
Text(kIsWasm ? 'WebAssembly active' : 'WebAssembly inactive')
结果页面一直显示“WebAssembly inactive”,这说明Wasm并没有被正确启用。
我已经做了以下排查步骤:
- 使用Flutter稳定通道,版本为3.22.3
- 为了排除
index.html本身的问题,我删除了原有的web文件夹,然后通过命令flutter create . --platforms=web重新生成了web相关文件 - 执行
flutter build web --wasm命令进行编译,过程顺利完成,终端输出显示“✓ Built build/web” - 编译完成后,我直接在
build/web目录下用dhttpd启动了本地测试服务器,还特意设置了跨域相关的Header:dhttpd '--headers=Cross-Origin-Embedder-Policy=credentialless;Cross-Origin-Opener-Policy=same-origin',确保不是服务器端的跨域问题导致的异常
有没有朋友碰到过类似的问题?或者能给我一些进一步排查的方向吗?
备注:内容来源于stack exchange,提问作者Kuhlemann
相关产品推荐
相关产品推荐

