HarmonyOS 鸿蒙Next 在WebView中调用摄像头权限问题

发布于 1周前 作者 vueper 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 在WebView中调用摄像头权限问题

api11能调用到摄像头的权限吗,我用WebView引入html,单独的html在网页上可以运行调用摄像头,我放到鸿蒙中就找不到摄像头了,求助

5 回复

调用摄像头是为了拍照上传图片吗?

看看这个有用吗:https://developer.huawei.com/consumer/cn/blog/topic/03156916617042036

上面是调用的相册,如果只要摄像头,可以看下面文章中的startCameraPicker方法 参考:https://developer.huawei.com/consumer/cn/blog/topic/03155564512484001

大佬帮我瞧瞧,为了拉摄像头的视频流,这个代码我单独在网页运行是可以的,放到webview中就报错 <!-- index.html --> <!DOCTYPE html> <html> <head> <meta charset=“UTF-8”> </head> <body> <video id=“video” width=“500px” height=“500px” autoplay=“autoplay”></video> <br> <input type=“button” title=“HTML5摄像头” value=“开启摄像头” onclick=“getMedia()”/> <span type=“text” id=“textInput”/> <script src="./vconsole.min.js"></script> <script> var vConsole = new VConsole(); function getMedia() { let constraints = { video: {width: 500, height: 500}, audio: true }; // 获取video摄像头区域 let video = document.getElementById(“video”); // 返回的Promise对象 let promise = navigator.mediaDevices.getUserMedia(constraints); // then()异步,调用MediaStream对象作为参数 promise.then(function (MediaStream) { console.log(“MediaStream====”+MediaStream) document.getElementById(‘textInput’).innerHTML=MediaStream video.srcObject = MediaStream; video.play(); }); } </script> </body> </html>

我也没找到直接通过h5代码调起权限,都是通过jsbridge间接调起。

针对HarmonyOS鸿蒙Next API11在WebView中调用摄像头权限问题,首先确保WebView组件已正确集成并配置。检查应用的manifest文件,确认已声明摄像头权限(如ohos.permission.CAMERA)。在WebView中调用摄像头通常涉及JavaScript接口与原生代码的交互,确保这部分逻辑正确实现。如果问题依旧存在,检查API文档确认API11版本对WebView调用摄像头的支持情况,并查看是否有相关更新或补丁。如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部