From a5496c292b09bca4de38c3b8a538d1a0c45d6136 Mon Sep 17 00:00:00 2001 From: "1362134550@qq.com" <1362134550@qq.com> Date: Tue, 16 Sep 2025 21:28:18 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/src/main/ets/pages/MiniWindowPage.ets | 4 ++- .../main/ets/pages/NavigationRedirectPage.ets | 4 ++- entry/src/main/ets/pages/ResizeWindowPage.ets | 4 ++- entry/src/main/ets/pages/RouterRedirect.ets | 10 ++++-- .../src/main/ets/pages/RouterRedirectPage.ets | 4 ++- .../src/main/ets/view/PipWindowComponent.ets | 8 +++-- entry/src/main/ets/viewmodel/AVPlayerDemo.ets | 34 +++++++++++++------ 7 files changed, 49 insertions(+), 19 deletions(-) diff --git a/entry/src/main/ets/pages/MiniWindowPage.ets b/entry/src/main/ets/pages/MiniWindowPage.ets index 45653f9..0925551 100644 --- a/entry/src/main/ets/pages/MiniWindowPage.ets +++ b/entry/src/main/ets/pages/MiniWindowPage.ets @@ -45,7 +45,9 @@ struct MiniWindowPage { * Move the floating window to the specified position. */ moveWindow() { - this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y); + this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y).catch((error: BusinessError) => { + Logger.error(`moveWindowTo error, code is ${error.code}, message is ${error.message}`); + }); } build() { diff --git a/entry/src/main/ets/pages/NavigationRedirectPage.ets b/entry/src/main/ets/pages/NavigationRedirectPage.ets index 7287b25..1b6dff0 100644 --- a/entry/src/main/ets/pages/NavigationRedirectPage.ets +++ b/entry/src/main/ets/pages/NavigationRedirectPage.ets @@ -45,7 +45,9 @@ struct NavigationRedirectPage { * Move the floating window to the specified position. */ moveWindow() { - this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y); + this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y).catch((error: BusinessError) => { + Logger.error(`moveWindowTo error, code is ${error.code}, message is ${error.message}`); + }); } build() { diff --git a/entry/src/main/ets/pages/ResizeWindowPage.ets b/entry/src/main/ets/pages/ResizeWindowPage.ets index d578e4b..a64f5e3 100644 --- a/entry/src/main/ets/pages/ResizeWindowPage.ets +++ b/entry/src/main/ets/pages/ResizeWindowPage.ets @@ -63,7 +63,9 @@ struct ResizeWindowPage { * Move the floating window to the specified position. */ moveWindow() { - this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y); + this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y).catch((error: BusinessError) => { + Logger.error(`moveWindowTo error, code is ${error.code}, message is ${error.message}`); + }); } build() { diff --git a/entry/src/main/ets/pages/RouterRedirect.ets b/entry/src/main/ets/pages/RouterRedirect.ets index 97d9069..11d5c01 100644 --- a/entry/src/main/ets/pages/RouterRedirect.ets +++ b/entry/src/main/ets/pages/RouterRedirect.ets @@ -44,8 +44,14 @@ struct RouterRedirect { } onPageHide(): void { - if (window.findWindow('RouterRedirectPage').isWindowShowing()) { - window.findWindow('RouterRedirectPage').destroyWindow() + try { + if (window.findWindow('RouterRedirectPage').isWindowShowing()) { + window.findWindow('RouterRedirectPage').destroyWindow().catch((error: BusinessError) => { + Logger.error(`destroyWindow error, code is ${error.code}, message is ${error.message}`); + }); + } + } catch (err) { + Logger.error('failed to create subWindow Cause:' + err); } } diff --git a/entry/src/main/ets/pages/RouterRedirectPage.ets b/entry/src/main/ets/pages/RouterRedirectPage.ets index 2e94126..37cae95 100644 --- a/entry/src/main/ets/pages/RouterRedirectPage.ets +++ b/entry/src/main/ets/pages/RouterRedirectPage.ets @@ -45,7 +45,9 @@ struct RouterRedirectPage { * Move the floating window to the specified position. */ moveWindow() { - this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y); + this.subWindow.moveWindowTo(this.windowPosition.x, this.windowPosition.y).catch((error: BusinessError) => { + Logger.error(`moveWindowTo error, code is ${error.code}, message is ${error.message}`); + }); } build() { diff --git a/entry/src/main/ets/view/PipWindowComponent.ets b/entry/src/main/ets/view/PipWindowComponent.ets index 51a854e..f7e552b 100644 --- a/entry/src/main/ets/view/PipWindowComponent.ets +++ b/entry/src/main/ets/view/PipWindowComponent.ets @@ -86,7 +86,9 @@ export struct PipWindowComponent { navigationId: this.navId, templateType: PiPWindow.PiPTemplateType.VIDEO_PLAY }; - let promise: Promise = PiPWindow.create(config); + let promise: Promise = PiPWindow.create(config).catch((error: BusinessError) => { + Logger.error(`PiPWindow.create error, code is ${error.code}, message is ${error.message}`); + }); promise.then((controller: PiPWindow.PiPController) => { this.pipController = controller; this.initPipController(); @@ -174,7 +176,9 @@ export struct PipWindowComponent { stopPip() { if (this.pipController) { - let promise: Promise = this.pipController.stopPiP(); + let promise: Promise = this.pipController.stopPiP().catch((error: BusinessError) => { + Logger.error(`stopPiP error, code is ${error.code}, message is ${error.message}`); + }); promise.then(() => { Logger.info(`Succeeded in stopping pip.`); this.pipController?.off('stateChange'); diff --git a/entry/src/main/ets/viewmodel/AVPlayerDemo.ets b/entry/src/main/ets/viewmodel/AVPlayerDemo.ets index 45c09b4..5c8e76c 100644 --- a/entry/src/main/ets/viewmodel/AVPlayerDemo.ets +++ b/entry/src/main/ets/viewmodel/AVPlayerDemo.ets @@ -80,13 +80,17 @@ export class AVPlayerDemo { } async avPlayerFdSrcDemo(context: common.UIAbilityContext) { - let avPlayer: media.AVPlayer = await media.createAVPlayer(); - this.setAVPlayerCallback(avPlayer); - let fileDescriptor = await context.resourceManager.getRawFd('product.mp4'); - let avFileDescriptor: media.AVFileDescriptor = - { fd: fileDescriptor.fd, offset: fileDescriptor.offset, length: fileDescriptor.length }; - avPlayer.fdSrc = avFileDescriptor; - this.avPlayer = avPlayer; + try { + let avPlayer: media.AVPlayer = await media.createAVPlayer(); + this.setAVPlayerCallback(avPlayer); + let fileDescriptor = await context.resourceManager.getRawFd('product.mp4'); + let avFileDescriptor: media.AVFileDescriptor = + { fd: fileDescriptor.fd, offset: fileDescriptor.offset, length: fileDescriptor.length }; + avPlayer.fdSrc = avFileDescriptor; + this.avPlayer = avPlayer; + } catch (e) { + Logger.error(`AVPlayer catch error happened,error ${JSON.stringify(e)}`); + } } switchPlayOrPause() { @@ -94,9 +98,13 @@ export class AVPlayerDemo { return; } if (this.status === 'playing') { - this.avPlayer.pause(); + this.avPlayer.pause().catch((error: BusinessError) => { + Logger.error(`pause error, code is ${error.code}, message is ${error.message}`); + }); } else { - this.avPlayer.play(); + this.avPlayer.play().catch((error: BusinessError) => { + Logger.error(`play error, code is ${error.code}, message is ${error.message}`); + }); } } @@ -104,13 +112,17 @@ export class AVPlayerDemo { if (this.avPlayer === null) { return; } - this.avPlayer.pause(); + this.avPlayer.pause().catch((error: BusinessError) => { + Logger.error(`pause error, code is ${error.code}, message is ${error.message}`); + }); } play() { if (this.avPlayer === null) { return; } - this.avPlayer.play(); + this.avPlayer.play().catch((error: BusinessError) => { + Logger.error(`play error, code is ${error.code}, message is ${error.message}`); + }); } } \ No newline at end of file -- Gitee From 705ea11d18631189f08e471f1b38142c2c24e07b Mon Sep 17 00:00:00 2001 From: "1362134550@qq.com" <1362134550@qq.com> Date: Tue, 16 Sep 2025 21:31:57 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/src/main/ets/pages/MiniWindowPage.ets | 1 + entry/src/main/ets/pages/NavigationRedirectPage.ets | 1 + entry/src/main/ets/pages/ResizeWindowPage.ets | 1 + entry/src/main/ets/pages/RouterRedirect.ets | 1 + entry/src/main/ets/view/PipWindowComponent.ets | 5 +---- entry/src/main/ets/view/ResizeWindowComponent.ets | 1 + 6 files changed, 6 insertions(+), 4 deletions(-) diff --git a/entry/src/main/ets/pages/MiniWindowPage.ets b/entry/src/main/ets/pages/MiniWindowPage.ets index 0925551..940a314 100644 --- a/entry/src/main/ets/pages/MiniWindowPage.ets +++ b/entry/src/main/ets/pages/MiniWindowPage.ets @@ -14,6 +14,7 @@ */ import { display, window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; import { WindowPosition } from '../viewmodel/WindowPosition'; diff --git a/entry/src/main/ets/pages/NavigationRedirectPage.ets b/entry/src/main/ets/pages/NavigationRedirectPage.ets index 1b6dff0..2d8afc6 100644 --- a/entry/src/main/ets/pages/NavigationRedirectPage.ets +++ b/entry/src/main/ets/pages/NavigationRedirectPage.ets @@ -14,6 +14,7 @@ */ import { display, window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; import { WindowPosition } from '../viewmodel/WindowPosition'; diff --git a/entry/src/main/ets/pages/ResizeWindowPage.ets b/entry/src/main/ets/pages/ResizeWindowPage.ets index a64f5e3..73611ea 100644 --- a/entry/src/main/ets/pages/ResizeWindowPage.ets +++ b/entry/src/main/ets/pages/ResizeWindowPage.ets @@ -14,6 +14,7 @@ */ import { display, inspector, window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; import { WindowPosition } from '../viewmodel/WindowPosition'; diff --git a/entry/src/main/ets/pages/RouterRedirect.ets b/entry/src/main/ets/pages/RouterRedirect.ets index 11d5c01..30bc0c6 100644 --- a/entry/src/main/ets/pages/RouterRedirect.ets +++ b/entry/src/main/ets/pages/RouterRedirect.ets @@ -14,6 +14,7 @@ */ import { router, window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; diff --git a/entry/src/main/ets/view/PipWindowComponent.ets b/entry/src/main/ets/view/PipWindowComponent.ets index f7e552b..b6f3eed 100644 --- a/entry/src/main/ets/view/PipWindowComponent.ets +++ b/entry/src/main/ets/view/PipWindowComponent.ets @@ -86,10 +86,7 @@ export struct PipWindowComponent { navigationId: this.navId, templateType: PiPWindow.PiPTemplateType.VIDEO_PLAY }; - let promise: Promise = PiPWindow.create(config).catch((error: BusinessError) => { - Logger.error(`PiPWindow.create error, code is ${error.code}, message is ${error.message}`); - }); - promise.then((controller: PiPWindow.PiPController) => { + PiPWindow.create(config).then((controller: PiPWindow.PiPController) => { this.pipController = controller; this.initPipController(); this.pipController.startPiP().then(() => { diff --git a/entry/src/main/ets/view/ResizeWindowComponent.ets b/entry/src/main/ets/view/ResizeWindowComponent.ets index fc4e393..fbf691f 100644 --- a/entry/src/main/ets/view/ResizeWindowComponent.ets +++ b/entry/src/main/ets/view/ResizeWindowComponent.ets @@ -14,6 +14,7 @@ */ import { window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; -- Gitee From 50ac5b25ed901ac0131b19d17ffbcf3c164baf4b Mon Sep 17 00:00:00 2001 From: "1362134550@qq.com" <1362134550@qq.com> Date: Tue, 16 Sep 2025 21:34:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/src/main/ets/pages/RouterRedirectPage.ets | 1 + 1 file changed, 1 insertion(+) diff --git a/entry/src/main/ets/pages/RouterRedirectPage.ets b/entry/src/main/ets/pages/RouterRedirectPage.ets index 37cae95..a0080b7 100644 --- a/entry/src/main/ets/pages/RouterRedirectPage.ets +++ b/entry/src/main/ets/pages/RouterRedirectPage.ets @@ -14,6 +14,7 @@ */ import { display, window } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; import CommonConstants from '../constants/CommonConstants'; import Logger from '../utils/Logger'; import { WindowPosition } from '../viewmodel/WindowPosition'; -- Gitee