From e3cf95af5819b7b717b89443a8e367e6eee72dee Mon Sep 17 00:00:00 2001 From: lon9 <815882449@qq.com> Date: Mon, 22 Dec 2025 17:26:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8C=E6=BA=90=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/src/main/ets/pages/Index.ets | 2 ++ entry/src/main/ets/utils/CameraUtil.ets | 13 +++++-------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/entry/src/main/ets/pages/Index.ets b/entry/src/main/ets/pages/Index.ets index 11b8845..91b0425 100644 --- a/entry/src/main/ets/pages/Index.ets +++ b/entry/src/main/ets/pages/Index.ets @@ -102,7 +102,9 @@ struct Index { let err = error as BusinessError; hilog.error(0x0000, 'MultiDeviceCamera', `Failed to obtain fold status. Code: ${err.code}, message: ${err.message}`); } + // [StartExclude SelectCamera2] this.cameraUtil.setSensorMonitor(); + // [EndExclude SelectCamera2] } // [End SelectCamera2] diff --git a/entry/src/main/ets/utils/CameraUtil.ets b/entry/src/main/ets/utils/CameraUtil.ets index d67a027..c062de3 100644 --- a/entry/src/main/ets/utils/CameraUtil.ets +++ b/entry/src/main/ets/utils/CameraUtil.ets @@ -38,14 +38,11 @@ export class CameraUtil { windowUtil?: WindowUtil; lastRotation: number = 0; onGravity: (data: sensor.GravityResponse) => void = (data: sensor.GravityResponse) => { - let rotation: number = 0; - if (Math.abs(data.z) > OVERLOOKING_GRAVITY_OF_Z_AXIS) { - // In the horizontal preview state, retrieve the previous preview rotation angle. - rotation = this.lastRotation; - } else { + if (Math.abs(data.z) <= OVERLOOKING_GRAVITY_OF_Z_AXIS) { + let rotation: number = this.lastRotation; let degree: number = this.getCalDegree(data.x, data.y, data.z); let isFront: boolean | undefined = AppStorage.get('isFront'); - if (degree >= 0 && (degree <= 30 || degree >= 300)) { + if ((degree >= 0 && degree <= 30) || degree >= 300) { rotation = camera.ImageRotation.ROTATION_0; } else if (degree > 30 && degree <= 120) { if (isFront) { @@ -66,7 +63,7 @@ export class CameraUtil { // Use ROTATION_270 when degree range is (210, 300] for back camera. rotation = camera.ImageRotation.ROTATION_270; } - }; + } this.lastRotation = rotation; } }; @@ -244,7 +241,7 @@ export class CameraUtil { } else { let degree: number = this.getCalDegree(data.x, data.y, data.z); - if (degree >= 0 && (degree <= 30 || degree >= 300)) { + if ((degree >= 0 && degree <= 30) || degree >= 300) { rotation = camera.ImageRotation.ROTATION_0; } else if (degree > 30 && degree <= 120) { if (isFront) { -- Gitee