Qt webAssembly 调试相关
1.浏览器静态缓存。在用浏览器打开我们重新编译(且部署)好的网页时,很有可能会发现还是旧的页面。这可能是因为浏览器的静态缓存的问题(也就是对于一些比较大的文件,浏览器会将其缓存下来,下次再加载这个页面时,就直接用这个缓存的,不从服务重新下载了。很不幸,wasm文件就是这些被缓存的文件之一)。要处理的话,就是清理一下浏览器的缓存。edge的清理方式为: 历史记录–》清理浏览数据...
1.nginx不要放在中文路径下,否则无法启动。
2.nginx设置不缓存。
https://www.cnblogs.com/52why/p/13292731.html
https://www.cnblogs.com/jifeng/p/5406359.html
在将Qt编译出来的wasm文件发布到服务器之后,一般浏览器会在第一次打开这个网页之后,就将这个wasm文件给缓存下来。后面假如我们再更新版本,浏览器用的依然还是它自己缓存的版本。假如不想让浏览器缓存,让他每次都下载新的,可以在nginx中这样设置(增加header):
location /{
root ../FacePage/;
index FacePage.html;
# 这个禁用缓存果然有用
add_header Cache-Control no-cache;
add_header Cache-Control private;
# # 直接这样加 也有用, 但是可能这个时间并不是文件的实际修改的时间,后面再研究
# add_header Last-Modified $date_gmt;
}
3.浏览器静态缓存。
假如没有进行第二步的操作,在用浏览器打开我们重新编译(且部署)好的网页时,很有可能会发现还是旧的页面。这可能是因为浏览器的静态缓存的问题(也就是对于一些比较大的文件,浏览器会将其缓存下来,下次再加载这个页面时,就直接用这个缓存的,不从服务重新下载了。很不幸,wasm文件就是这些被缓存的文件之一)。
要处理的话,就是清理一下浏览器的缓存。
edge的清理方式为: 历史记录–》清理浏览数据

4.QCamera在获取信息之前需要先load。
mCamera = new QCamera(cameraInfo);
//在进行参数读取之前,需要先load
mCamera->load();
qDebug() << "+++++++++++++++";
for(auto res: mCamera->supportedViewfinderResolutions())
{
qDebug() << "camera resolutions:" << res;
}
for(auto format: mCamera->supportedViewfinderPixelFormats())
{
qDebug() << "pixel format:" << format;
}
for(auto rate: mCamera->supportedViewfinderFrameRateRanges())
{
qDebug() << "frame rate range:" << rate.minimumFrameRate << rate.maximumFrameRate;
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)