From 2babb2cd110f0f0e29b65c494d7c964843c094d8 Mon Sep 17 00:00:00 2001 From: chengxingzhen Date: Thu, 23 Mar 2023 09:19:38 +0800 Subject: [PATCH] =?UTF-8?q?xts-getCurrentTopAbility=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chengxingzhen --- .../entry/src/main/ets/Ability1/Ability1.ts | 8 +++++++- .../entry/src/main/ets/MainAbility/MainAbility.ts | 13 +++++++++++++ .../entry/src/main/ets/test/Ability.test.ets | 13 ++++++++++++- 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/ability/ability_runtime/actsqueryfunctiontest/actsgetcurrenttopabilitystagebtest/entry/src/main/ets/Ability1/Ability1.ts b/ability/ability_runtime/actsqueryfunctiontest/actsgetcurrenttopabilitystagebtest/entry/src/main/ets/Ability1/Ability1.ts index bb7ab2379..ea11ae24a 100644 --- a/ability/ability_runtime/actsqueryfunctiontest/actsgetcurrenttopabilitystagebtest/entry/src/main/ets/Ability1/Ability1.ts +++ b/ability/ability_runtime/actsqueryfunctiontest/actsgetcurrenttopabilitystagebtest/entry/src/main/ets/Ability1/Ability1.ts @@ -36,6 +36,13 @@ export default class MainAbility extends Ability { globalThis.ability3Context = this.context windowStage.setUIContent(this.context, "pages/index1", null) + windowStage.on('windowStageEvent', (data) => { + console.log(`ActsGetCurrentTopAbilityStagebTest onWindwoStage is : ${JSON.stringify(data)}`) + if (data == 2 ) { + console.log(`ActsGetCurrentTopAbilityStagebTest getWindowStageActive is sucess`) + commonEvent.publish("GetCurrentTopAbility", publishCallBackOne); + } + }) } onWindowStageDestroy() { @@ -46,7 +53,6 @@ export default class MainAbility extends Ability { onForeground() { // Ability has brought to foreground console.log("Ability1 onForeground") - commonEvent.publish("GetCurrentTopAbility", publishCallBackOne); } diff --git a/ability/ability_runtime/apitest/entry/src/main/ets/MainAbility/MainAbility.ts b/ability/ability_runtime/apitest/entry/src/main/ets/MainAbility/MainAbility.ts index e7b2eeb8f..733c7477e 100644 --- a/ability/ability_runtime/apitest/entry/src/main/ets/MainAbility/MainAbility.ts +++ b/ability/ability_runtime/apitest/entry/src/main/ets/MainAbility/MainAbility.ts @@ -36,7 +36,20 @@ export default class TestAbility extends Ability { onWindowStageCreate(windowStage) { console.log('TestAbility onWindowStageCreate') + globalThis.onWindowStageActive = false; + let count = 0; windowStage.setUIContent(this.context, 'MainAbility/pages/index', null) + windowStage.on('windowStageEvent', (data) => { + console.log(`ActsApiTest onWindwoStage is : ${JSON.stringify(data)}`) + if (data == 2 ) { + console.log(`ActsApiTest onWindwoStage count is : ${count}`) + count++; + if (count == 2) { + console.log(`ActsApiTest onWindwoStage count is : ${count}`) + globalThis.onWindowStageActive = true; + } + } + }) } onWindowStageDestroy() { diff --git a/ability/ability_runtime/apitest/entry/src/main/ets/test/Ability.test.ets b/ability/ability_runtime/apitest/entry/src/main/ets/test/Ability.test.ets index 7784ab650..f1a78a739 100644 --- a/ability/ability_runtime/apitest/entry/src/main/ets/test/Ability.test.ets +++ b/ability/ability_runtime/apitest/entry/src/main/ets/test/Ability.test.ets @@ -31,7 +31,18 @@ export default function abilityTest() { describe('ActsChangeAbilityStagetest', function () { beforeAll(async function (done) { console.info('beforeAll called') - await sleep(2000) + let delay = 3000; + let start = new Date().getTime(); + while (true) { + if (globalThis.onWindowStageActive) { + console.log(`ActsApiTest getWindwoStageActive is success`) + break; + } + if (new Date().getTime() - start > delay) { + console.log(`ActsApiTest getWindwoStageActive is failed`) + break; + } + } await globalThis.abilitydelegator.getCurrentTopAbility().then((data) => { mainability = data done() -- GitLab