更新记录
1.0(2024-09-04)
1.0 支持原生ios相机拍照,自动对焦,找了很多插件实现了拍照后发现都不能实现自动对焦,于是自己写了一个。
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 4.26,Android:不支持,iOS:9,HarmonyNext:不确定 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
在提供的示例图片中就是使用该插件来实现的拍照界面。另外提供了源代码,很好修改实现自己需要的功能,最近会尽快出一期关于如何开发UTS插件的教程,购买本插件的朋友,等到教程录好之后,全部免费给大家。
教程内容大致会包含:1、如何开发一个普通的组件(以drawer弹窗为例)2、如何开发一个原生的drawer弹窗,因为我发现在IOS中,使用css的窗口动画不是很流畅,使用原生插件写动画会非常流畅。3、UTS的API插件(如加密算法、手机震动等)4、开发UTS组件插件,如相机拍照
在需要调用的页面中调用组件:
需要注意的是,本插件是采用UTS原生代码混编实现的,意思就是主要代码都是swift原生代码,大家购买后,源码也很容易看懂。
<jx-camerax @takeSuccess="takeSuccess" style="flex: 1;" ref="jcamera">
可以指定一个任意的按钮来调用拍照事件
<button @click="takePhoto">测试拍照</button>
样式只能是用style直接写在标签上,可以指定width和height来设置宽高。其中@takeSuccess 是拍照成功后的回调方法,具体接收回调参数看下面的说明。
在uts的script代码中调用相机插件:
takePhoto(){
const camera = this.$refs['jcamera'] as JxCameraxElement;
camera.takePhoto(this.active);
},
//拍照方法执行之后,需要对拍照得到的图片进行处理,这时候可以停止相机预览,方法如下:
camera.stop();
//恢复相机预览方法为:
camera.start();
拍照后如何获取拍照的图片?在dom的标签中指定的回调事件:
takeSuccess(map : Map){
const img = map['path'];
}