diff --git a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingBT.ets b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingBT.ets index 91ad2cad4221fce114eed13f6252be951ede0389..f40df4b8f0b698eed622f90197f9ee5ce17bd8ce 100644 --- a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingBT.ets +++ b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingBT.ets @@ -117,7 +117,7 @@ struct audioOutputRouting { } } Row(){ - Text('测试目的:\n当设备连接蓝牙耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持蓝牙外设\n2. 按下播放按钮\n3. 连接华为蓝牙耳机\n4. 拔出蓝牙耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持蓝牙耳机连接或者插拔蓝牙耳机后接收到路由通知、路由显示正确,且连接蓝牙后音频通过蓝牙耳机播放,则用例pass').fontColor(Color.White).fontSize('18fp') + Text('测试目的:\n当设备连接蓝牙耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持蓝牙外设\n2. 按下播放按钮\n3. 连接蓝牙耳机\n4. 拔出蓝牙耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持蓝牙耳机连接或者插拔蓝牙耳机后接收到路由通知、路由显示正确,且连接蓝牙后音频通过蓝牙耳机播放,则用例pass').fontColor(Color.White).fontSize('18fp') } Row(){ diff --git a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingTypeC.ets b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingTypeC.ets index 87bac194e1d2ae92df34ca774d4876cdb6d2ccfb..0766e1cffff998a491e9e0231bab18ebd4a79627 100644 --- a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingTypeC.ets +++ b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingTypeC.ets @@ -117,7 +117,7 @@ struct audioOutputRouting { } } Row(){ - Text('测试目的:\n当设备连接TypeC耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持TypeC外设\n2. 按下播放按钮\n3. 连接华为TypeC耳机\n4. 拔出TypeC耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持TypeC耳机连接或者插拔TypeC耳机后接收到路由通知、路由显示正确,且连接TypeC后音频通过TypeC耳机播放,则用例pass').fontColor(Color.White).fontSize('18fp') + Text('测试目的:\n当设备连接TypeC耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持TypeC外设\n2. 按下播放按钮\n3. 连接TypeC耳机\n4. 拔出TypeC耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持TypeC耳机连接或者插拔TypeC耳机后接收到路由通知、路由显示正确,且连接TypeC后音频通过TypeC耳机播放,则用例pass').fontColor(Color.White).fontSize('18fp') } Row(){ diff --git a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingWiredHeadset.ets b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingWiredHeadset.ets index c6aada4e1b7431ff9a95568e8ccd7326ab37b08b..609c9be73d36fbb60dde1b8b92c46c182cfe5125 100644 --- a/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingWiredHeadset.ets +++ b/validator/acts_validator/src/main/ets/pages/Audio/AudioOutputRoutingWiredHeadset.ets @@ -117,7 +117,7 @@ struct audioOutputRouting { } } Row(){ - Text('测试目的:\n当设备连接3.5mm有线耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持3.5mm耳机外设\n2. 按下播放按钮\n3. 连接华为3.5mm有线耳机\n4. 拔出3.5mm有线耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持有线耳机输入或者插入和拔出有线耳机后接收到路由通知,路由显示正确,且连接外设后音频通过外设播放,则用例pass').fontColor(Color.White).fontSize('18fp') + Text('测试目的:\n当设备连接3.5mm有线耳机时,音频路由是否正确切换\n测试准备:\n断连任何外设,保持设备常亮\n测试步骤:\n1. 验证设备是否支持3.5mm耳机外设\n2. 按下播放按钮\n3. 连接3.5mm有线耳机\n4. 拔出3.5mm有线耳机\n5. 按下停止按钮\n测试标准:\n如果设备不支持有线耳机输入或者插入和拔出有线耳机后接收到路由通知,路由显示正确,且连接外设后音频通过外设播放,则用例pass').fontColor(Color.White).fontSize('18fp') } Row(){ diff --git a/validator/acts_validator/src/main/ets/pages/Camera/CameraOrientation.ets b/validator/acts_validator/src/main/ets/pages/Camera/CameraOrientation.ets index f952a36442caf3f9bf0c82740dbd6a2dbb54d8b6..902874a16418ef7721bae1da6737152ad502eed3 100644 --- a/validator/acts_validator/src/main/ets/pages/Camera/CameraOrientation.ets +++ b/validator/acts_validator/src/main/ets/pages/Camera/CameraOrientation.ets @@ -61,6 +61,8 @@ struct cameraOrientation { this.imageRotation = this.imageRotation + 90 if (this.imageRotation > 270 && this.clickFrequency > 3) { this.imageRotation = 0 + } + if (this.cameraListLength > 1){ this.cameraDeviceIndex = 1 CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex) } @@ -69,12 +71,14 @@ struct cameraOrientation { cameraListFn() { this.cameraListLength = CameraService.cameras.length + Logger.info(this.tag, `cameraListFn cameraListLength: ${this.cameraListLength}`) + this.testingFrequency = this.cameraListLength * 4 + Logger.info(this.tag, `cameraListFn testingFrequency: ${this.testingFrequency}`) for (let index = 0; index < this.cameraListLength; index++) { this.cameraList.push({ value: `Camera ${index}` }) } - this.testingFrequency = this.cameraListLength * 4 } handleTakePicture = (assetUri: string) => { @@ -83,10 +87,11 @@ struct cameraOrientation { } onPageShow() { - Logger.info(this.tag, `takePicture end, assetUri`) + Logger.info(this.tag, `cameraOrientation onPageShow`) // @ts-ignore this.surfaceId = this.mXComponentController.getXComponentSurfaceId() CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex).then(() => { + Logger.info(this.tag, `onPageShow initCamera start`) this.cameraListFn() }) } @@ -130,7 +135,7 @@ struct cameraOrientation { }) }) .size({ width: '100%', height: '100%' }) - Text('预览').fontSize('20fp').fontColor(Color.White) + Text('预览').fontSize('20fp').fontColor(Color.White) }.size({ width: '40%', height: '60%' }) Column() { @@ -165,7 +170,7 @@ struct cameraOrientation { FillColor: $FillColor, name: $name, Vue: $Vue, - testingFrequency: this.testingFrequency, + testingFrequency: $testingFrequency, isEnabled: $isEnabled, clickFrequency: $clickFrequency }).height('10%').width('100%') diff --git a/validator/acts_validator/src/main/ets/pages/Camera/CameraPhotoFormat.ets b/validator/acts_validator/src/main/ets/pages/Camera/CameraPhotoFormat.ets index 4fb4d1064d67f0bc0da5f15df4951869af14b993..e2fcf4eedf96c01cb6c32c7af0f7836f384d0923 100644 --- a/validator/acts_validator/src/main/ets/pages/Camera/CameraPhotoFormat.ets +++ b/validator/acts_validator/src/main/ets/pages/Camera/CameraPhotoFormat.ets @@ -58,7 +58,7 @@ struct cameraOrientation { for (let index = 0; index < this.cameraListLength; index++) { this.cameraList.push({ value: `Camera ${index}` }) } - // 测试总次数 = 摄像头0的分辨率 + 摄像头1的分辨率 优先以RK为主 + this.testingFrequency = this.resolution.length Logger.info(this.tag, `testingFrequency ${this.testingFrequency}`) } @@ -79,7 +79,7 @@ struct cameraOrientation { async cameraInit(obj?) { CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj, this.clickFrequency).then(() => { - this.resolution = CameraService.previewSizeResolution + this.resolution = CameraService.photoResolution this.resolutionSelectVal = String(this.resolution[this.clickFrequency].value) this.cameraListFn() }) @@ -145,7 +145,7 @@ struct cameraOrientation { Column() { Image(this.assetUri || '').size({ width: '100%', height: '100%' }).border({ width: 1 }) - Text('图片').fontSize('20fp').fontColor(Color.White) + Text('图片').fontSize('20fp').fontColor(Color.White) }.size({ width: '40%', height: '60%' }) }.width('100%').height('50%') @@ -174,6 +174,7 @@ struct cameraOrientation { CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj) Logger.info(this.tag, `onSelect Rotation index: ${index}, value: ${value}, obj: ${obj}`) }) + .backgroundColor(Color.Black) Select(this.cameraList) .selected(this.cameraDeviceIndex) .value(this.cameraDeviceIndex ? 'Camera 1' : 'Camera 0') @@ -189,6 +190,7 @@ struct cameraOrientation { this.cameraListFn() }) }) + .backgroundColor(Color.Black) }.justifyContent(FlexAlign.SpaceEvenly) Text(`提示:不同拍照分辨率下进行拍摄,图片拍摄成功且与预览画面一致则选择pass,否则选择fail`) diff --git a/validator/acts_validator/src/main/ets/pages/Camera/CameraPreviewFormat.ets b/validator/acts_validator/src/main/ets/pages/Camera/CameraPreviewFormat.ets index 915e7d5c9e3e2a4955cd4df714bd18d937a22c0e..b9d58b529e63060fa6bd15525a21207bcbd1cdea 100644 --- a/validator/acts_validator/src/main/ets/pages/Camera/CameraPreviewFormat.ets +++ b/validator/acts_validator/src/main/ets/pages/Camera/CameraPreviewFormat.ets @@ -63,7 +63,7 @@ struct cameraFormat { } async cameraInit(obj?) { - CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj).then(() => { + CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, undefined, undefined, obj).then(() => { this.resolution = CameraService.resolution this.resolutionSelectVal = String(this.resolution[this.clickFrequency].value) this.cameraListFn() @@ -170,9 +170,10 @@ struct cameraFormat { "height": objH } } - CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj) + CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, undefined, undefined, obj) Logger.info(this.tag, `onSelect Rotation index: ${index}, value: ${value}, obj: ${obj}`) }) + .backgroundColor(Color.Black) Select(this.cameraList) .selected(this.cameraDeviceIndex) .value(this.cameraDeviceIndex ? 'Camera 1' : 'Camera 0') @@ -186,6 +187,7 @@ struct cameraFormat { this.cameraDeviceIndex = index this.cameraInit() }) + .backgroundColor(Color.Black) }.size({ width: '100%', height: '50%' }).justifyContent(FlexAlign.SpaceEvenly) Row() { @@ -201,6 +203,7 @@ struct cameraFormat { .onSelect((index: number, value) => { Logger.info(this.tag, `onSelect format index: ${index}, value: ${value}`) }) + .backgroundColor(Color.Black) Button('下一个') .borderRadius(8) .backgroundColor(0x317aff) diff --git a/validator/acts_validator/src/main/ets/pages/Camera/CameraSerialPhoto.ets b/validator/acts_validator/src/main/ets/pages/Camera/CameraSerialPhoto.ets index 2d7336da2ea620e9843f17ac4d52e95b958ef982..3b7c2d566fba0dcb79253f454da541b8ecbf6867 100644 --- a/validator/acts_validator/src/main/ets/pages/Camera/CameraSerialPhoto.ets +++ b/validator/acts_validator/src/main/ets/pages/Camera/CameraSerialPhoto.ets @@ -158,6 +158,7 @@ struct cameraOrientation { this.cameraListFn() }) }) + .backgroundColor(Color.Black) Text(`提示:`).fontSize('16fp').fontColor(Color.White) Text(`期望拍摄${this.cameraListLength*10}张照片,实际拍摄${this.clickSerialPhotoVal}张,如果一致请选择pass,否则选择fail`) .fontSize('16fp').fontColor(Color.White) diff --git a/validator/acts_validator/src/main/ets/pages/Camera/CameraVideo.ets b/validator/acts_validator/src/main/ets/pages/Camera/CameraVideo.ets index fdb4073da989885bd1b0a85f0eeb6a183ccc8251..9e83e564c972857a2617122545e676c6deb65a62 100644 --- a/validator/acts_validator/src/main/ets/pages/Camera/CameraVideo.ets +++ b/validator/acts_validator/src/main/ets/pages/Camera/CameraVideo.ets @@ -105,8 +105,8 @@ struct cameraOrientation { } async cameraInit(obj?) { - CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj).then(() => { - this.resolution = CameraService.resolution + CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex).then(() => { + this.resolution = CameraService.videoResolution this.resolutionSelectVal = String(this.resolution[this.clickFrequency].value) this.cameraListFn() }) @@ -199,9 +199,10 @@ struct cameraOrientation { "height": objH } } - CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex, obj) + CameraService.initCamera(this.surfaceId, this.cameraDeviceIndex) Logger.info(this.tag, `onSelect Rotation index: ${index}, value: ${value}, obj: ${obj}`) }) + .backgroundColor(Color.Black) Select(this.cameraList) .selected(this.cameraDeviceIndex) .value(this.cameraDeviceIndex ? 'Camera 1' : 'Camera 0') @@ -216,6 +217,7 @@ struct cameraOrientation { this.cameraDeviceIndex = index this.cameraInit() }) + .backgroundColor(Color.Black) Select([{ value: 'YUV' }]) .selected(0) .value('YUV') @@ -229,6 +231,7 @@ struct cameraOrientation { .onSelect((index: number, value) => { Logger.info(this.tag, `onSelect format index: ${index}, value: ${value}`) }) + .backgroundColor(Color.Black) }.size({ width: '100%', height: '50%' }) Row() { diff --git a/validator/acts_validator/src/main/ets/pages/common/CameraOrientationContainer.ets b/validator/acts_validator/src/main/ets/pages/common/CameraOrientationContainer.ets index 4e3a77ae1003d7c255914e8cec2d2bffde7ddb34..d1f091190601f889d619e7a396006b1dc2bfc737 100644 --- a/validator/acts_validator/src/main/ets/pages/common/CameraOrientationContainer.ets +++ b/validator/acts_validator/src/main/ets/pages/common/CameraOrientationContainer.ets @@ -32,7 +32,7 @@ export struct CustomContainer { Url : string = ''; title : string = ''; StepTips: string = ''; - testingFrequency: number + @Link testingFrequency: number @Link clickFrequency: number @Builder PassBtn(text: Resource, isFullScreen: boolean) { @@ -52,6 +52,8 @@ export struct CustomContainer { this.isEnabled = true this.Vue = false this.clickFrequency++ + Logger.info(`TAG`, `clickFrequency: ${this.clickFrequency}`) + Logger.info(`TAG`, `testingFrequency: ${this.testingFrequency}`) if (this.clickFrequency === this.testingFrequency){ router.back({ url:this.Url, diff --git a/validator/acts_validator/src/main/ets/pages/model/CameraService.ts b/validator/acts_validator/src/main/ets/pages/model/CameraService.ts index bba7d80633343eb6533525a359254fe827540217..3168b2a9dcead17048755dc515bf00fc5de1433c 100644 --- a/validator/acts_validator/src/main/ets/pages/model/CameraService.ts +++ b/validator/acts_validator/src/main/ets/pages/model/CameraService.ts @@ -77,7 +77,8 @@ class CameraService { } private videoOutputStopBol: boolean = true resolution: any = null - previewSizeResolution: any = null + photoResolution: any = null + videoResolution: any = null constructor() { try { @@ -132,7 +133,7 @@ class CameraService { } } - async initCamera(surfaceId: number, cameraDeviceIndex: number, obj?, photoIndex?) { + async initCamera(surfaceId: number, cameraDeviceIndex: number, obj?, photoIndex?, previewObj?) { try { if (deviceInfo.deviceType === 'default') { this.videoConfig.videoSourceType = 1 @@ -144,8 +145,11 @@ class CameraService { await this.getCameraManagerFn() await this.getSupportedCamerasFn() await this.getSupportedOutputCapabilityFn(cameraDeviceIndex) - // await this.createPreviewOutputFn(obj ? obj : this.photoProfileObj, surfaceId) - await this.createPreviewOutputFn(this.cameraOutputCapability.previewProfiles[0], surfaceId) + if (previewObj){ + previewObj.format = this.cameraOutputCapability.previewProfiles[0].format + Logger.info(this.tag, `previewObj format: ${previewObj.format}`) + } + await this.createPreviewOutputFn(previewObj ? previewObj : this.cameraOutputCapability.previewProfiles[0], surfaceId) // await this.createPhotoOutputFn(this.photoProfileObj) await this.createPhotoOutputFn(obj ? obj : this.cameraOutputCapability.photoProfiles[photoIndex?photoIndex:0]) await this.createCameraInputFn(this.cameras[cameraDeviceIndex]) @@ -441,8 +445,9 @@ class CameraService { this.cameraOutputCapability = this.cameraManager.getSupportedOutputCapability(this.cameras[cameraDeviceIndex]) let previewSize = [] let photoSize = [] + let videoSize = [] this.cameraOutputCapability.previewProfiles.forEach((item, index) => { -// Logger.info(this.tag, `cameraOutputCapability previewProfiles index: ${index}, item:` + JSON.stringify(item)) + Logger.info(this.tag, `cameraOutputCapability previewProfiles index: ${index}, item:` + JSON.stringify(item)) previewSize.push({ value: `${item.size.width}x${item.size.height}` }) @@ -453,12 +458,19 @@ class CameraService { value: `${item.size.width}x${item.size.height}` }) }) + this.cameraOutputCapability.videoProfiles.forEach((item, index) => { + Logger.info(this.tag, `cameraOutputCapability videoProfiles index: ${index}, item:` + JSON.stringify(item)) + videoSize.push({ + value: `${item.size.width}x${item.size.height}` + }) + }) Logger.info(this.tag, `cameraOutputCapability previewProfiles:` + JSON.stringify(this.cameraOutputCapability.previewProfiles)) Logger.info(this.tag, `cameraOutputCapability photoProfiles:` + JSON.stringify(this.cameraOutputCapability.photoProfiles)) Logger.info(this.tag, `cameraOutputCapability videoProfiles:` + JSON.stringify(this.cameraOutputCapability.videoProfiles)) Logger.info(this.tag, `cameraOutputCapability previewProfiles previewSize:` + JSON.stringify(previewSize)) this.resolution = previewSize - this.previewSizeResolution = photoSize + this.photoResolution = photoSize + this.videoResolution = videoSize return previewSize } // 释放会话及其相关参数