From 6ba47442eccf885e24458c6d670424183e454ff6 Mon Sep 17 00:00:00 2001 From: shenpeixing Date: Fri, 25 Jul 2025 13:54:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9taihe=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=B8=8Ed.ts=E6=96=87=E4=BB=B6=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shenpeixing --- .../ets/taihe/author/src/ohos.sensor.impl.cpp | 46 ++++++++-------- frameworks/ets/taihe/idl/ohos.sensor.taihe | 53 ++++++++++--------- 2 files changed, 52 insertions(+), 47 deletions(-) diff --git a/frameworks/ets/taihe/author/src/ohos.sensor.impl.cpp b/frameworks/ets/taihe/author/src/ohos.sensor.impl.cpp index 13f7cdbf..fe2d1b55 100644 --- a/frameworks/ets/taihe/author/src/ohos.sensor.impl.cpp +++ b/frameworks/ets/taihe/author/src/ohos.sensor.impl.cpp @@ -1142,7 +1142,7 @@ void OffCommon(int32_t sensorTypeId, optional_view opq) } } -void OffWearDetection(optional_view opq) +void OffWearDetection(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_WEAR_DETECTION, opq); } @@ -1158,7 +1158,7 @@ void OnceSignificantMotion(callback_view opq) +void OffSignificantMotion(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_SIGNIFICANT_MOTION, opq); } @@ -1174,7 +1174,7 @@ void OnceRotationVector(callback_view f, u OnceCommon(SENSOR_TYPE_ID_ROTATION_VECTOR, f, opq); } -void OffRotationVector(optional_view opq) +void OffRotationVector(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_ROTATION_VECTOR, opq); } @@ -1189,7 +1189,7 @@ void OnceProximity(callback_view f, uintptr_t o OnceCommon(SENSOR_TYPE_ID_PROXIMITY, f, opq); } -void OffProximity(optional_view opq) +void OffProximity(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_PROXIMITY, opq); } @@ -1205,7 +1205,7 @@ void OncePedometerDetection(callback_view opq) +void OffPedometerDetection(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_PEDOMETER_DETECTION, opq); } @@ -1220,7 +1220,7 @@ void OncePedometer(callback_view f, uintptr_t o OnceCommon(SENSOR_TYPE_ID_PEDOMETER, f, opq); } -void OffPedometer(optional_view opq) +void OffPedometer(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_PEDOMETER, opq); } @@ -1235,7 +1235,7 @@ void OnceOrientation(callback_view f, uintptr OnceCommon(SENSOR_TYPE_ID_ORIENTATION, f, opq); } -void OffOrientation(optional_view opq) +void OffOrientation(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_ORIENTATION, opq); } @@ -1251,7 +1251,7 @@ void OnceMagneticFieldUncalibrated(callback_view opq) +void OffMagneticFieldUncalibrated(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, opq); } @@ -1267,7 +1267,7 @@ void OnceMagneticField(callback_view f, uin OnceCommon(SENSOR_TYPE_ID_MAGNETIC_FIELD, f, opq); } -void OffMagneticField(optional_view opq) +void OffMagneticField(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_MAGNETIC_FIELD, opq); } @@ -1283,7 +1283,7 @@ void OnceLinearAccelerometer(callback_view opq) +void OffLinearAccelerometer(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_LINEAR_ACCELERATION, opq); } @@ -1298,7 +1298,7 @@ void OnceHumidity(callback_view f, uintptr_t opq OnceCommon(SENSOR_TYPE_ID_HUMIDITY, f, opq); } -void OffHumidity(optional_view opq) +void OffHumidity(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_HUMIDITY, opq); } @@ -1313,7 +1313,7 @@ void OnceHeartRate(callback_view f, uintptr_t o OnceCommon(SENSOR_TYPE_ID_HEART_RATE, f, opq); } -void OffHeartRate(optional_view opq) +void OffHeartRate(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_HEART_RATE, opq); } @@ -1328,7 +1328,7 @@ void OnceHall(callback_view f, uintptr_t opq) OnceCommon(SENSOR_TYPE_ID_HALL, f, opq); } -void OffHall(optional_view opq) +void OffHall(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_HALL, opq); } @@ -1344,7 +1344,7 @@ void OnceGyroscopeUncalibrated(callback_view opq) +void OffGyroscopeUncalibrated(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, opq); } @@ -1359,7 +1359,7 @@ void OnceGyroscope(callback_view f, uintptr_t o OnceCommon(SENSOR_TYPE_ID_GYROSCOPE, f, opq); } -void OffGyroscope(optional_view opq) +void OffGyroscope(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_GYROSCOPE, opq); } @@ -1374,7 +1374,7 @@ void OnceGravity(callback_view f, uintptr_t opq) OnceCommon(SENSOR_TYPE_ID_GRAVITY, f, opq); } -void OffGravity(optional_view opq) +void OffGravity(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_GRAVITY, opq); } @@ -1389,7 +1389,7 @@ void OnceBarometer(callback_view f, uintptr_t o OnceCommon(SENSOR_TYPE_ID_BAROMETER, f, opq); } -void OffBarometer(optional_view opq) +void OffBarometer(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_BAROMETER, opq); } @@ -1405,7 +1405,7 @@ void OnceAmbientTemperature(callback_view opq) +void OffAmbientTemperature(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, opq); } @@ -1420,7 +1420,7 @@ void OnceAmbientLight(callback_view f, uintptr_t op OnceCommon(SENSOR_TYPE_ID_AMBIENT_LIGHT, f, opq); } -void OffAmbientLight(optional_view opq) +void OffAmbientLight(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_AMBIENT_LIGHT, opq); } @@ -1436,7 +1436,7 @@ void OnceAccelerometerUncalibrated(callback_view opq) +void OffAccelerometerUncalibrated(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, opq); } @@ -1452,7 +1452,7 @@ void OnceAccelerometer(callback_view f, uin OnceCommon(SENSOR_TYPE_ID_ACCELEROMETER, f, opq); } -void OffAccelerometer(optional_view opq) +void OffAccelerometer(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_ACCELEROMETER, opq); } @@ -1462,7 +1462,7 @@ void OnSar(callback_view f, uintptr_t opq, optional_v OnCommon(SENSOR_TYPE_ID_SAR, f, opq, options); } -void OffSar(optional_view opq) +void OffSar(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_SAR, opq); } @@ -1472,7 +1472,7 @@ void OnColor(callback_view f, uintptr_t opq, option OnCommon(SENSOR_TYPE_ID_COLOR, f, opq, options); } -void OffColor(optional_view opq) +void OffColor(optional_view sensorInfoParam, optional_view opq) { OffCommon(SENSOR_TYPE_ID_COLOR, opq); } diff --git a/frameworks/ets/taihe/idl/ohos.sensor.taihe b/frameworks/ets/taihe/idl/ohos.sensor.taihe index 7681850a..1568a7cb 100644 --- a/frameworks/ets/taihe/idl/ohos.sensor.taihe +++ b/frameworks/ets/taihe/idl/ohos.sensor.taihe @@ -1334,6 +1334,11 @@ struct Options { interval: MapOption; } +struct SensorInfoParam { + deviceId: Optional; + sensorIndex: Optional; + } + /** * Calculate rotation matrix based on gravity vector and geomagnetic vector. * @param { Array } gravity - gravity Indicates the gravity vector. @@ -1445,7 +1450,7 @@ function getSensorListSync(): Array; default: throw new Error(`Unknown type: ${type}`); } } - function off(type: string, callback?: (arg0 : Object) => void) { + function off(type: string, sensorInfoParam?: SensorInfoParam, callback?: (arg0 : Object) => void) { switch(type) { case "wearDetectionChange": return offWearDetection(callback); case "significantMotionChange": return offSignificantMotion(callback); @@ -1476,90 +1481,90 @@ function getSensorListSync(): Array; """) function OnWearDetection(f: (info: WearDetectionResponse) => void, opq: Opaque, options: Optional); function OnceWearDetection(f: (info: WearDetectionResponse) => void, opq: Opaque); -function OffWearDetection(opq: Optional); +function OffWearDetection(sensorInfoParam: Optional, opq: Optional); function OnSignificantMotion(f: (info: SignificantMotionResponse) => void, opq: Opaque, options: Optional); function OnceSignificantMotion(f: (info: SignificantMotionResponse) => void, opq: Opaque); -function OffSignificantMotion(opq: Optional); +function OffSignificantMotion(sensorInfoParam: Optional, opq: Optional); function OnRotationVector(f: (info: RotationVectorResponse) => void, opq: Opaque, options: Optional); function OnceRotationVector(f: (info: RotationVectorResponse) => void, opq: Opaque); -function OffRotationVector(opq: Optional); +function OffRotationVector(sensorInfoParam: Optional, opq: Optional); function OnProximity(f: (info: ProximityResponse) => void, opq: Opaque, options: Optional); function OnceProximity(f: (info: ProximityResponse) => void, opq: Opaque); -function OffProximity(opq: Optional); +function OffProximity(sensorInfoParam: Optional, opq: Optional); function OnPedometerDetection(f: (info: PedometerDetectionResponse) => void, opq: Opaque, options: Optional); function OncePedometerDetection(f: (info: PedometerDetectionResponse) => void, opq: Opaque); -function OffPedometerDetection(opq: Optional); +function OffPedometerDetection(sensorInfoParam: Optional, opq: Optional); function OnPedometer(f: (info: PedometerResponse) => void, opq: Opaque, options: Optional); function OncePedometer(f: (info: PedometerResponse) => void, opq: Opaque); -function OffPedometer(opq: Optional); +function OffPedometer(sensorInfoParam: Optional, opq: Optional); function OnOrientation(f: (info: OrientationResponse) => void, opq: Opaque, options: Optional); function OnceOrientation(f: (info: OrientationResponse) => void, opq: Opaque); -function OffOrientation(opq: Optional); +function OffOrientation(sensorInfoParam: Optional, opq: Optional); function OnMagneticFieldUncalibrated(f: (info: MagneticFieldUncalibratedResponse) => void, opq: Opaque, options: Optional); function OnceMagneticFieldUncalibrated(f: (info: MagneticFieldUncalibratedResponse) => void, opq: Opaque); -function OffMagneticFieldUncalibrated(opq: Optional); +function OffMagneticFieldUncalibrated(sensorInfoParam: Optional, opq: Optional); function OnMagneticField(f: (info: MagneticFieldResponse) => void, opq: Opaque, options: Optional); function OnceMagneticField(f: (info: MagneticFieldResponse) => void, opq: Opaque); -function OffMagneticField(opq: Optional); +function OffMagneticField(sensorInfoParam: Optional, opq: Optional); function OnLinearAccelerometer(f: (info: LinearAccelerometerResponse) => void, opq: Opaque, options: Optional); function OnceLinearAccelerometer(f: (info: LinearAccelerometerResponse) => void, opq: Opaque); -function OffLinearAccelerometer(opq: Optional); +function OffLinearAccelerometer(sensorInfoParam: Optional, opq: Optional); function OnHumidity(f: (info: HumidityResponse) => void, opq: Opaque, options: Optional); function OnceHumidity(f: (info: HumidityResponse) => void, opq: Opaque); -function OffHumidity(opq: Optional); +function OffHumidity(sensorInfoParam: Optional, opq: Optional); function OnHeartRate(f: (info: HeartRateResponse) => void, opq: Opaque, options: Optional); function OnceHeartRate(f: (info: HeartRateResponse) => void, opq: Opaque); -function OffHeartRate(opq: Optional); +function OffHeartRate(sensorInfoParam: Optional, opq: Optional); function OnHall(f: (info: HallResponse) => void, opq: Opaque, options: Optional); function OnceHall(f: (info: HallResponse) => void, opq: Opaque); -function OffHall(opq: Optional); +function OffHall(sensorInfoParam: Optional, opq: Optional); function OnGyroscopeUncalibrated(f: (info: GyroscopeUncalibratedResponse) => void, opq: Opaque, options: Optional); function OnceGyroscopeUncalibrated(f: (info: GyroscopeUncalibratedResponse) => void, opq: Opaque); -function OffGyroscopeUncalibrated(opq: Optional); +function OffGyroscopeUncalibrated(sensorInfoParam: Optional, opq: Optional); function OnGyroscope(f: (info: GyroscopeResponse) => void, opq: Opaque, options: Optional); function OnceGyroscope(f: (info: GyroscopeResponse) => void, opq: Opaque); -function OffGyroscope(opq: Optional); +function OffGyroscope(sensorInfoParam: Optional, opq: Optional); function OnGravity(f: (info: GravityResponse) => void, opq: Opaque, options: Optional); function OnceGravity(f: (info: GravityResponse) => void, opq: Opaque); -function OffGravity(opq: Optional); +function OffGravity(sensorInfoParam: Optional, opq: Optional); function OnBarometer(f: (info: BarometerResponse) => void, opq: Opaque, options: Optional); function OnceBarometer(f: (info: BarometerResponse) => void, opq: Opaque); -function OffBarometer(opq: Optional); +function OffBarometer(sensorInfoParam: Optional, opq: Optional); function OnAmbientTemperature(f: (info: AmbientTemperatureResponse) => void, opq: Opaque, options: Optional); function OnceAmbientTemperature(f: (info: AmbientTemperatureResponse) => void, opq: Opaque); -function OffAmbientTemperature(opq: Optional); +function OffAmbientTemperature(sensorInfoParam: Optional, opq: Optional); function OnAmbientLight(f: (info: LightResponse) => void, opq: Opaque, options: Optional); function OnceAmbientLight(f: (info: LightResponse) => void, opq: Opaque); -function OffAmbientLight(opq: Optional); +function OffAmbientLight(sensorInfoParam: Optional, opq: Optional); function OnAccelerometerUncalibrated(f: (info: AccelerometerUncalibratedResponse) => void, opq: Opaque, options: Optional); function OnceAccelerometerUncalibrated(f: (info: AccelerometerUncalibratedResponse) => void, opq: Opaque); -function OffAccelerometerUncalibrated(opq: Optional); +function OffAccelerometerUncalibrated(sensorInfoParam: Optional, opq: Optional); function OnAccelerometer(f: (info: AccelerometerResponse) => void, opq: Opaque, options: Optional); function OnceAccelerometer(f: (info: AccelerometerResponse) => void, opq: Opaque); -function OffAccelerometer(opq: Optional); +function OffAccelerometer(sensorInfoParam: Optional, opq: Optional); function OnSar(f: (info: SarResponse) => void, opq: Opaque, options: Optional); -function OffSar(opq: Optional); +function OffSar(sensorInfoParam: Optional, opq: Optional); function OnColor(f: (info: ColorResponse) => void, opq: Opaque, options: Optional); -function OffColor(opq: Optional); \ No newline at end of file +function OffColor(sensorInfoParam: Optional, opq: Optional); \ No newline at end of file -- Gitee