uniapp安卓端调用摄像头方案

上篇水过uni.createCameraContent() 不能在app端用

看了好多文献,最后找来几个靠谱点的方案

1.NVUE

用nvue混合开发(就单那个文件是nvue),就可以用createCameraContext对象打开摄像头

再用live-pusher组件进行直播推流,然后调用其api的截图来达成拍照效果。

参考https://blog.csdn.net/weixin_43236062/article/details/109065450

缺点:nvue不支持一些css,目前我项目的全局的样式影响到了

2.纯H5

整个页面纯h5页面开发,这uniapp上说的

即直接用H5做个摄像机页面,然后webview内嵌到uniapp的页面

写好的H5页面放根目录hybrid/html(自己建)

新建个uniapp页面放<webview src="@/hybrid/html/xxx.html><webview>

webview文档https://uniapp.dcloud.io/component/web-view

h5 camera文档https://www.html5plus.org/doc/zh_cn/camera.html

缺点:嵌H5我觉得怪麻烦的,我也不想写H5

3.大半H5

和方案1一样是使用live-pusher组件进行直播推流,同时开启摄像头

(差不多是方案1夹方案2)

参考https://blog.csdn.net/qq_31403519/article/details/106780327

缺点:同上,要在窗口上显示其他内容还得嵌个webview上去


综上,选了nvue,没什么特别的理由就是不想乱糊个h5上去,以及移植过程可以减少大多的痛苦。个人建议如果不是铺满整个屏幕的摄像头视频,用方案3。

点赞

发表回复

邮箱不会被公开,用于显示Gravatar的头像