diff --git a/entry/src/main/ets/entryability/EntryAbility.ets b/entry/src/main/ets/entryability/EntryAbility.ets index 636f8db2f5a3f6b33f97f185f4c95b251a485cf0..1d415fd69678e1f1aaa99bdc9026f891629c3e2a 100644 --- a/entry/src/main/ets/entryability/EntryAbility.ets +++ b/entry/src/main/ets/entryability/EntryAbility.ets @@ -13,46 +13,54 @@ * limitations under the License. */ -import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit'; import { hilog } from '@kit.PerformanceAnalysisKit'; +import { UIAbility } from '@kit.AbilityKit'; import { window } from '@kit.ArkUI'; +const DOMAIN = 0x0000; +const TAG = 'EntryAbility'; +const FORMAT = '%{public}s'; + export default class EntryAbility extends UIAbility { - onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + onCreate(): void { + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onCreate'); } onDestroy(): void { - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onDestroy'); } onWindowStageCreate(windowStage: window.WindowStage): void { // Main window is created, set main page for this ability - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onWindowStageCreate'); windowStage.loadContent('pages/WindowPiP', (err) => { if (err.code) { - hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + hilog.error(DOMAIN, TAG, FORMAT, 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); return; } - hilog.info(0x0000, 'testTag', 'Succeeded in loading the content.'); - let uiContext: UIContext | undefined = windowStage.getMainWindowSync().getUIContext(); - AppStorage.setOrCreate('uiContext', uiContext); + hilog.info(DOMAIN, TAG, FORMAT, 'Succeeded in loading the content.'); + try { + let uiContext: UIContext | undefined = windowStage.getMainWindowSync().getUIContext(); + AppStorage.setOrCreate('uiContext', uiContext); + } catch (err) { + hilog.error(DOMAIN, TAG, FORMAT, `GetMainWindowSync failed. Cause code: ${err.code}, message: ${err.message}`); + } }); } onWindowStageDestroy(): void { // Main window is destroyed, release UI related resources - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onWindowStageDestroy'); } onForeground(): void { // Ability has brought to foreground - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onForeground'); } onBackground(): void { // Ability has back to background - hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + hilog.info(DOMAIN, TAG, FORMAT, 'Ability onBackground'); } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/AVPlayer.ets b/entry/src/main/ets/pages/AVPlayer.ets index ef1065ee05a18ab142ec94a30f59ea8c7e1fe5fb..faab8ae9850c9be3fc5c48526af6710b6b187011 100644 --- a/entry/src/main/ets/pages/AVPlayer.ets +++ b/entry/src/main/ets/pages/AVPlayer.ets @@ -39,11 +39,15 @@ export class AVPlayer { UIContext.eventHub.on('appStateChange', (fg: boolean) => { if (fg) { if (this.State === Constants.PAUSED_STATUS) { - this.avPlayer?.play(); + this.avPlayer?.play().catch((err: BusinessError) => { + Logger.error(`Play failed. Cause code: ${err.code}, message: ${err.message}`); + }); } } else { if (this.State === Constants.PLAYING_STATUS) { - this.avPlayer?.pause(); + this.avPlayer?.pause().catch((err: BusinessError) => { + Logger.error(`Pause failed. Cause code: ${err.code}, message: ${err.message}`); + }); } } }); @@ -63,8 +67,12 @@ export class AVPlayer { this.avPlayer?.on('error', (err: BusinessError) => { Logger.info(`Invoke avPlayer failed, code is ${err.code}, message is ${err.message}`); // Call the RESET call to reset the resource to trigger the idle state. - this.avPlayer?.reset(); - this.avPlayer?.play(); + this.avPlayer?.reset().catch((err: BusinessError) => { + Logger.error(`Reset failed. Cause code: ${err.code}, message: ${err.message}`); + }); + this.avPlayer?.play().catch((err: BusinessError) => { + Logger.error(`Play failed. Cause code: ${err.code}, message: ${err.message}`); + }); }); // The callback function for state machine changes. this.avPlayer?.on('stateChange', async (state) => { @@ -78,12 +86,18 @@ export class AVPlayer { Logger.info('AVPlayer state idle called.'); if (!this.jumpNext) { // Call the release operation to destroy the instance object. - this.avPlayer.release(); + this.avPlayer.release().catch((err: BusinessError) => { + Logger.error(`Release failed. Cause code: ${err.code}, message: ${err.message}`); + }); } else { - let context = UIContext as common.UIAbilityContext; - let fileDescriptor: resourceManager.RawFileDescriptor; - fileDescriptor = await context.resourceManager.getRawFd('video.mp4'); - this.avPlayer.fdSrc = fileDescriptor; + try { + let context = UIContext as common.UIAbilityContext; + let fileDescriptor: resourceManager.RawFileDescriptor; + fileDescriptor = await context.resourceManager.getRawFd('video.mp4'); + this.avPlayer.fdSrc = fileDescriptor; + } catch (err) { + Logger.error(`GetRawFd failed. Cause code: ${err.code}, message: ${err.message}`); + } } break; // After avplayer sets the playback source, this status is reported. @@ -93,7 +107,7 @@ export class AVPlayer { this.avPlayer.surfaceId = this.surfaceID; this.avPlayer.prepare().then(() => { Logger.info('AVPlayer prepare succeeded.'); - }, (err: BusinessError) => { + }).catch((err: BusinessError) => { Logger.error(`Invoke prepare failed, code is ${err.code}, message is ${err.message}`); }); break; @@ -102,7 +116,9 @@ export class AVPlayer { Logger.info('AVPlayer state prepared called.'); // Call the playback API to start playback. if (this.playStatus) { - this.avPlayer.play(); + this.avPlayer.play().catch((err: BusinessError) => { + Logger.error(`Play failed. Cause code: ${err.code}, message: ${err.message}`); + }); } break; // After the play is successfully invoked, the state machine is triggered. @@ -124,11 +140,15 @@ export class AVPlayer { case Constants.STOPPED_STATUS: Logger.info('AVPlayer state stopped called.'); // Call the reset operation to initialize the avplayer state. - this.avPlayer.reset(); + this.avPlayer.reset().catch((err: BusinessError) => { + Logger.error(`Reset failed. Cause code: ${err.code}, message: ${err.message}`); + }); break; case Constants.RELEASED_STATUS: Logger.info('AVPlayer state released called.'); - this.avPlayer.release(); + this.avPlayer.release().catch((err: BusinessError) => { + Logger.error(`Release failed. Cause code: ${err.code}, message: ${err.message}`); + }); break; default: Logger.info('AVPlayer state unknown called.'); @@ -164,19 +184,25 @@ export class AVPlayer { return; } this.jumpNext = true; - this.avPlayer?.stop(); + this.avPlayer?.stop().catch((err: BusinessError) => { + Logger.error(`Stop failed. Cause code: ${err.code}, message: ${err.message}`); + }); } play() { if ((this.State === Constants.PAUSED_STATUS || this.State === Constants.PREPARED_STATUS) && this.playStatus === true) { - this.avPlayer?.play(); + this.avPlayer?.play().catch((err: BusinessError) => { + Logger.error(`Play failed. Cause code: ${err.code}, message: ${err.message}`); + }); } } pause() { if (this.State === Constants.PLAYING_STATUS) { - this.avPlayer?.pause(); + this.avPlayer?.pause().catch((err: BusinessError) => { + Logger.error(`Pause failed. Cause code: ${err.code}, message: ${err.message}`); + }); } } @@ -184,7 +210,11 @@ export class AVPlayer { if (!this.avPlayer) { return; } - this.avPlayer.stop(); - this.avPlayer.reset(); + this.avPlayer.stop().catch((err: BusinessError) => { + Logger.error(`Stop failed. Cause code: ${err.code}, message: ${err.message}`); + }); + this.avPlayer.reset().catch((err: BusinessError) => { + Logger.error(`Reset failed. Cause code: ${err.code}, message: ${err.message}`); + }); } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/VideoPlay.ets b/entry/src/main/ets/pages/VideoPlay.ets index 26bc894256a92718efbdac11a2ea0f46e3115cdc..123d4708c1b6bda5589056d5821a79c1231bb1eb 100644 --- a/entry/src/main/ets/pages/VideoPlay.ets +++ b/entry/src/main/ets/pages/VideoPlay.ets @@ -73,7 +73,11 @@ export struct PlayVideo { Logger.info(`[${TAG}] pipController create error`); return; } - await this.pipController.startPiP(); + try { + await this.pipController.startPiP(); + } catch (err) { + Logger.error(`StartPiP failed. Cause code: ${err.code}, message: ${err.message}`); + } } async stopPip() { @@ -81,7 +85,11 @@ export struct PlayVideo { Logger.info(`[${TAG}] pipController is not exist`); return; } - await this.pipController.stopPiP(); + try { + await this.pipController.stopPiP(); + } catch (err) { + Logger.error(`StopPiP failed. Cause code: ${err.code}, message: ${err.message}`); + } } async createPipController() {