【代码案例】HarmonyOS 鸿蒙Next 使用Web获取相机拍照图片案例

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

【代码案例】HarmonyOS 鸿蒙Next 使用Web获取相机拍照图片案例

HarmonyOS Next应用开发案例–最下面有案例地址

本示例介绍如何在HTML页面中拉起原生相机进行拍照,并获取返回的图片。

效果预览图 image.png

使用说明

点击HTML页面中的选择文件按钮,拉起原生相机进行拍照。 完成拍照后,将图片在HTML的img标签中显示。

本案例完整代码,请访问: https://gitee.com/harmonyos-cases/cases/tree/master/CommonAppDevelopment/feature/webgetcameraimage

11 回复

能调用系统相机那真是太棒了 现在微信里面的相机拍照糊的要命 

改成从图库选择照片上传有办法吗?

希望HarmonyOS能加强与其他品牌设备的兼容性,让更多人受益。

先获取用户相册对象,然后调用Album.getAssets接口获取用户相册中的图片资源。官网指南有这部分内容。

有办法弹出选择吗? 类似Android 那种可以弹出系统默认的 相机 或图库,自选再选择

在onShowFileSelector添加弹出逻辑就可以实现。目前只是在里面直接调用了拉起相机的方法invokeCamera,所以只会跳转到相机。可以添加CustomDialog,添加选择相机和相册的按钮,根据按钮点击事件跳转到对应的场景。

有办法支持外接usb摄像头吗?
如何区分何时打开文件选择器、何时拍照、何时选择照片图库?有没有类似Android中 acceptType的标识字段?

我也想知道 fileSelector.getAcceptType() 这个方法不能取到 input 传入的 accept

我也想知道 fileSelector.getAcceptType() 这个方法不能取到 input 传入的 accept

在HarmonyOS(鸿蒙)中,如果你正在开发一个应用,并希望通过Web技术(如使用WebView或Web组件)来获取相机拍照的图片,这通常不是Web技术直接支持的功能,因为Web安全模型限制了直接访问硬件的能力。

一种解决方案是,在鸿蒙原生代码中实现拍照功能,然后将图片保存到设备或通过网络发送到服务器。接着,你可以在Web组件中通过URL访问这张图片。例如,你可以使用Java/Kotlin在鸿蒙应用中编写拍照逻辑,并通过FileProvider分享图片URI给WebView加载。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部