daShangDao_scanBook/uni_modules/ima-camera-view/changelog.md

439 lines
13 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 1.2.22026-06-11
> 新增功能
- 1、**iOS 端补齐 `previewRotation` 支持**`index.vue` 新增 `previewRotation` prop 与 `changePreviewRotation` 方法,`index.uts` 导出 `setPreviewRotation``ImaCameraManager.swift` 通过 `CGAffineTransform(rotationAngle:)` 实现预览层旋转(与 Android 行为对齐)。
> 问题修复
- 1、**修复首次进入时 `previewRotation` 初始值 90° 无效**`initCameraView()` 现在始终使用 `TextureView` 预览模式(不再等 `previewRotationDegrees != 0f` 才切换),避免初始化时用 `SurfaceView`、后续 prop 到达时 `setPreview(TEXTURE)` 触发相机重启导致旋转丢失。
- 2、**修复 `setPreviewRotation(0)` 不生效**`applyPreviewRotation()` 移除 `previewRotationDegrees == 0f` 提前返回0° 时显式重置 `cv.rotation = 0f``scaleX/Y = 1f`
- 3、**修复旋转切换按钮点击无效**`NVLoad()` 中在 `initCameraView()` 之前调用 `setPreviewRotation(this.previewRotation)`,确保原生 CameraView 创建时已读取旋转角度;`NVLayouted()` 增加安全网再次应用旋转。
- 4、**修复首次进入时 `onCameraOpened``$refs.cameraRef` 可能未就绪**:使用 `$nextTick` 延迟调用 `applyPreviewRotation()`picture→video 模式切换延迟从 300ms 延长至 800ms并在切换前同步调用一次旋转。
## 1.2.12026-06-10
> 新增功能
- 1、**外接摄像头预览旋转修正Android**:新增 `previewRotation` 属性及 `changePreviewRotation` 方法,用于修正无内置摄像头设备(如平板)外接 USB 摄像头时预览画面方向错误的问题;支持 `0` / `90` / `180` / `270`(或 `-90` 等等效角度)。
- 2、设备旋转时自动保持预览修正方向不变`onCameraOpened`、`onOrientationChanged` 时重新应用)。
> 问题修复
- 1、修复设置 `previewRotation` 后预览已正常、但**拍照输出图片方向仍不正确**的问题:拍照时会将 `previewRotation` 叠加到原生 `result.rotation` 后一并修正。
> 功能优化
- 1、启用 `previewRotation` 时自动切换为 `TextureView` 预览模式,并通过 `CameraView` 视图层旋转 + 缩放填充实现稳定预览(不依赖易被原生覆盖的 `TextureView.setTransform`)。
> 平台说明
- 本能力目前仅在 **`android`** 端实现;`ios` / `harmony` 暂未提供同等 API。
> 由于 **`harmony端`** 不支持兼容性组件,`harmony端`(指的是`harmony 5.0+`)不再本组件中更新,插件正在更新中
## 1.2.02026-05-24
> 新增功能
-
> 问题修复
-
> 功能优化
-
> 由于 **`harmony端`** 不支持兼容性组件,`harmony端`(指的是`harmony 5.0+`)不再本组件中更新,插件正在更新中
## 1.1.162026-05-20
> 新增功能
- 1、**预览圆角**:支持 `previewCornerRadius`、`previewCornerRadiusRate` 及 `changePreviewCorner`(圆形/多档圆角预览以原生实现为准)。
> 问题修复
- 1、修复「同页先预热 `video` 再轻触拍照」时,若在原生 `opened` 回调中无条件按 prop 再次 `changeMode`,会与原生「为拍照切换到 PICTURE 再在下一帧 `takePicture`」的逻辑冲突,导致预览反复关闭/打开、拍照异常的问题(已移除该盲目同步)。
- 2、`nvue` / 部分运行时下 `$refs` 实例上 **`changeMode` 等方法不可用** 的问题:通过 **`mode` prop + `watch`** 同步原生模式,页面侧推荐使用 `:mode` 切换 `picture` / `video`
> 功能优化
- 1、**`mode` prop** 增加监听:变更时调用原生 `setMode`,与 `changeMode` 行为对齐。
- 2、录像相关停止录像、开始时间戳等逻辑在主线程/时序上做了加固。
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.152026-02-02
> 新增功能(临时更新)
-
> 问题修复
- 1、部分手机无法录像的问题或者录像中没有返回结果的问题可能解决`{"errorCode"=>5,"reason"=>"录像失败","message"=>"java.lang.RuntimeException:startfailed."}`的问题)
- 1.1、增加了待录像(切换 VIDEO 模式后延后执行)
- 1.2、待拍照(切换 PICTURE 模式后延后执行)
> 功能优化
- 1、增加拍照、录像、结束录像时异常抛出
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.142026-01-30
> 新增功能(临时更新)
-
> 问题修复
- 1、部分手机无法录像的问题或者录像中没有返回结果的问题
- 2、修改代码结构准备改成兼容组件模式为`Harmony Next`做准备
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.132026-01-22
> 新增功能(临时更新)
-
> 问题修复
- 1、修复获取Activity实例、Application上下文上下文出现的问题
- 2、修复相机按键、蓝牙自拍杆监听事件的问题
> 功能优化
- 1、相机震动做了兼容处理
- 2、相机的权限申请做了兼容处理
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.122026-01-19
> 新增功能(临时更新)
-
> 问题修复
- 1、修复安卓8.1事打开相机报错“相机初始失败或者当前设备不支持创建失败When targetSdkVersion >= 33
should use amdroid.permission.xxx,...”
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.112026-01-07
> 新增功能(临时更新)
- 1、增加`take-error相机拍摄监测`、`orientation-change相机角度转换`、、`camera-change相机设置监听`
> 问题修复
- 1、在`setSizeSelectors`方法增加错误回调,便于排查一些手机调取无反应的问题
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.102026-01-07
> 新增功能(临时更新)
- 1、增加`take-error相机拍摄监测`、`orientation-change相机角度转换`、、`camera-change相机设置监听`
> 问题修复
- 1、在`setSizeSelectors`方法增加错误回调,便于排查一些手机调取无反应的问题
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.92026-01-06
> 新增功能(临时更新)
- 1、新增加载相机基础参数方法`loadCameraView`
> 问题修复
- 1、修复在 `HBuilderX 4.76` 及以下版本打包包括自定义基座在kotlin文件中无法获取当前
`UTSAndroid.getUniActivity()``UTSAndroid.getAppContext()`的问题
- 2、修复在 `HBuilderX 4.76` 及以下版本打包(包括自定义基座)时白屏后闪退的问题
- 3、修复高版本`安卓15+`及以上获取的SdkVersion值与当前应用实际的SdkVersion值不一致导致相机获取权限崩溃后闪退的问题
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.82026-01-05
> 新增功能(临时更新)
- 1、是否将拍摄文件保存到本地可见媒体即相册的方法`changeGallery`
> 问题修复
- 1、相机权限的问题如用户拒绝后可直接跳转到当前 App 的系统设置页
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.72026-01-04
> 新增功能(临时更新)
-
> 问题修复
- 1.1.6 版本推包后上传不成功的问题下载和导入还是1.1.5的代码)
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.62026-01-04
> 新增功能(临时更新)
-
> 问题修复
- 1、安卓高版本安卓16出现拍照的问题
- 2、在一些其他终端设备非手机中出现相机预览画面与实际不符合的问题`【待复测】`
- 3、一些配置不生效的问题如changeAspectRatio、changeOrientation由于相机加载顺序问题导致的
- 4、一些其他终端设备非手机进入卡顿或者黑屏几秒才显示相机预览页面`【待复测】`
- 5、一些手机设备由于权限问题导致第一次进入是黑屏或者后几次进入偶尔出现黑屏闪现的问题`【待复测】`
> 功能优化
- 1、将之前的uts改成了kotlin的写法
- 2、将组件是的抛出调整成`CameraManager.setCameraCallback`,方便后期增加参数输出、控制
- 3、优化了相机加载的顺序问题、以及设置相机时的问题
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
## 1.1.52025-12-29
> 新增功能(临时更新)
- 新增设置相机使用设备方向的方法`changeOrientation`
- 新增设置相机网格及颜色的方法`changeGrid`
> 问题修复
-
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新(已完成开发,测试中)
## 1.1.42025-12-28
> 新增功能(临时更新)
- 新增设置曝光值的方法`changeExposure`
> 问题修复
- 修复动态权限申请的问题即Android 12 及以下、Android 13+
- 修复 Android 16(即API级别为36)时摄像回调的问题
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新
## 1.1.32025-12-02
> 新增功能(临时更新)
-
> 问题修复
- 打包报错问题修复4.85版本有问题4.76以下的版本未复现)
- 报错内容:
`ima-camera-view/utssdk/app-android/src/index.kt:723:55 Argument type mismatch: actual type is 'Any', but 'Number' was expected`
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新
## 1.1.22025-11-06
> 新增功能(临时更新)
-
> 问题修复
- `快捷键拍照(蓝牙自拍杆、手机音量键)`拍照时,返回后按钮无法操作的问题修复
- 页面在没启用`shortcut快捷键拍照`时,也会进入快捷键的问题修复
- 修复在低版本`HubuildX`时打包出现找不到类型的问题
> 功能优化
- 优化了相机资源在进入时卡顿的问题
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新
## 1.1.12025-11-03
> 新增功能(临时更新)
- 新增设置照片输出格式的方法`changeSuffix`
> 问题修复
- 修复照片格式无法设置的问题【原因是在uni给出的生命周期内无法取到`props`的参数,只能在`watch`中处理】
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新
## 1.1.02025-10-31
> 新增功能
- 快捷键拍照: 如:按两下音量键拍照、按音量键拍照等等(可自定义)
- 蓝牙自拍杆: 提供可以连接蓝牙自拍杆拍照、对焦等(可自定义)
- 相机`是否开启蓝牙自拍杆、手机快捷键拍照`,可自定义快捷键,具体参考参数`shortcut`
-
> 问题修复
-
> 功能优化
-
> 计划新增功能(大版本更新【即 `1.2.0` 开始】)
- 完善鸿蒙`Harmony`版本的并进行更新
## 1.0.52025-10-30
> 新增功能(临时更新)
- 相机`录像`方法增加设置`视频录制时长限制`
- 相机`录像`声音默认系统录像声音,也可自定义,具体参考参数`recorder`、`sound2`
> 问题修复
-
> 功能优化
-
## 1.0.42025-10-18
> 新增功能(临时更新)
- 增加设置相机`白平衡`方法:`changeWhiteBalance`
- 增加设置相机`HDR`方法:`changeHdr`
- 增加设置相机`特定比例`方法:`changeAspectRatio`
- 新增了`widthRatio`、`heightRatio`、`tolerance`、`whiteBalance`、`hdr`、`shutter`、`sound`、`vibrate`、
`duration`等参数具体参考API
> 问题修复
-
> 功能优化
- 照片文件的尺寸和手机原相机的尺寸不对的问题,可以通过参数`duration`去控制,其中`全屏`、`1:1`
基本是和原相机尺寸一致的测试了大部分手机型号都OK个别手机`3:4`、`4:3`、`9:16`时会有少许容差,可以通过参数
`duration`去控制)
## 1.0.32025-10-16
> 新增功能
- 增加拍照声音,可以自定义声音文件(默认手机原相机声音)
- 增加拍照震动可以自定义震动时长默认200毫秒
> 问题修复
>
> 功能优化
- 照片文件的分辨率取手机原相机的,提高照片的清晰度
## 1.0.22025-09-09
> 新增功能
>
> 问题修复
>
> 功能优化
- 支持拍照预览或从相册选择后,返回当前相机页面时,如果出现黑屏状态,可以重新自己手动拉起相机
## 1.0.12025-09-05
> 新增功能
>
> 问题修复
- 修复高版本(`4.66`时)打包报错:`*(项目路径)*//index.kt:44:12 Unresolved reference: _uA`、
`*(项目路径)*/index.kt:118:48 Unresolved reference: _uO`的问题
- 修复前置拍出来的图片是镜像的问题
- 修复照片拍出来尺寸不对、照片过小的问题
> 功能优化
>
## 1.0.02025-05-27
> 新增功能
- 新增方法:`close`、 `open``takePhoto``takePhotoSnapshot``takeVideo`、`takeVideoSnapshot`、
`stopVideo``changeZoom``changeFacing`、`changeFlash`、`changeAudio`
- 新增事件:`onPictureTaken`、 `onVideoTakenStart``onVideoTakenEnd``onFocusStart``onFocusEnd`
- `android端`的所有功能已完成开发、测试
- `harmony端`计划开发中
- 初始版
> 问题修复
>
> 功能优化
>