• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15import Ability from '@ohos.app.ability.UIAbility'
16
17var listKey1 = [];
18
19export default class MultiMainability1 extends Ability {
20    onCreate(want, launchParam) {
21        console.log("[Demo] MultiMainability1 onCreate")
22        globalThis.abilityWant1 = want;
23        console.log("[Demo] MultiMainability1 context: " + JSON.stringify(this.context));
24        let AbilityLifecycleCallback = {
25            onAbilityCreate(ability) {
26                console.log("[Demo] AbilityLifecycleCallback1 onAbilityCreate ability:"
27                + JSON.stringify(ability));
28                let abilityname = ability.context.abilityInfo.name;
29                console.log("[Demo] AbilityLifecycleCallback1 onAbilityCreate abilityname:"
30                + JSON.stringify(abilityname));
31                console.log("[Demo] " + abilityname + " onAbilityCreate");
32                listKey1.push(abilityname + " onAbilityCreate");
33                console.log("[Demo] 1listKey1:" + JSON.stringify(listKey1));
34            },
35            onWindowStageCreate(ability, windowStage) {
36                console.log("[Demo] AbilityLifecycleCallback1 onWindowStageCreate ability:"
37                + JSON.stringify(ability));
38                let abilityname = ability.context.abilityInfo.name;
39                console.log("[Demo] AbilityLifecycleCallback1 onWindowStageCreate abilityname:"
40                + JSON.stringify(abilityname));
41                console.log("[Demo] " + abilityname + " onWindowStageCreate");
42                listKey1.push(abilityname + " onWindowStageCreate");
43                console.log("[Demo] 2listKey1:" + JSON.stringify(listKey1));
44            },
45            onWindowStageActive(ability, windowStage) {
46                let abilityname = ability.context.abilityInfo.name;
47                console.log(abilityname + " onWindowStageActive")
48            },
49            onWindowStageInactive(ability, windowStage) {
50                let abilityname = ability.context.abilityInfo.name;
51                console.log(abilityname + " onWindowStageInactive")
52            },
53            onWindowStageDestroy(ability, windowStage) {
54                console.log("[Demo] AbilityLifecycleCallback1 onWindowStageDestroy ability:"
55                + JSON.stringify(ability));
56                let abilityname = ability.context.abilityInfo.name;
57                listKey1.push(abilityname + " onWindowStageDestroy");
58                console.log("[Demo] 3listKey1:" + JSON.stringify(listKey1));
59            },
60            onAbilityDestroy(ability) {
61                console.log("[Demo] AbilityLifecycleCallback1 onAbilityDestroy ability:"
62                + JSON.stringify(ability));
63                let abilityname = ability.context.abilityInfo.name;
64                console.log("[Demo] AbilityLifecycleCallback1 onAbilityDestroy abilityname:"
65                + JSON.stringify(abilityname));
66                console.log("[Demo] " + abilityname + " onAbilityDestroy");
67                listKey1.push(abilityname + " onAbilityDestroy");
68                console.log("[Demo] 4listKey1:" + JSON.stringify(listKey1));
69            },
70            onAbilityForeground(ability) {
71                console.log("[Demo] AbilityLifecycleCallback1 onAbilityForeground ability:"
72                + JSON.stringify(ability));
73                let abilityname = ability.context.abilityInfo.name;
74                console.log("[Demo] AbilityLifecycleCallback1 onAbilityForeground abilityname:"
75                + JSON.stringify(abilityname));
76                console.log("[Demo] " + abilityname + " onAbilityForeground");
77                listKey1.push(abilityname + " onAbilityForeground");
78                console.log("[Demo] 5listKey1:" + JSON.stringify(listKey1));
79            },
80            onAbilityBackground(ability) {
81                console.log("[Demo] AbilityLifecycleCallback1 onAbilityBackground ability:"
82                + JSON.stringify(ability));
83                let abilityname = ability.context.abilityInfo.name;
84                console.log("[Demo] AbilityLifecycleCallback1 onAbilityBackground abilityname:"
85                + JSON.stringify(abilityname));
86                console.log("[Demo] " + abilityname + " onAbilityBackground");
87                listKey1.push(abilityname + " onAbilityBackground");
88                console.log("[Demo] 6listKey1:" + JSON.stringify(listKey1));
89            },
90            onAbilityContinue(ability) {
91                console.log("[Demo] AbilityLifecycleCallback1 onAbilityContinue ability:"
92                + JSON.stringify(ability));
93                let abilityname = ability.context.abilityInfo.name;
94                console.log("[Demo] AbilityLifecycleCallback1 onAbilityContinue abilityname:"
95                + JSON.stringify(abilityname));
96                console.log("[Demo] " + abilityname + " onAbilityContinue");
97                listKey1.push(abilityname + " onAbilityContinue");
98                console.log("[Demo] 7listKey1:" + JSON.stringify(listKey1));
99            }
100        }
101        globalThis.applicationContext1 = this.context.getApplicationContext();
102        let lifecycleid = globalThis.applicationContext1.on('abilityLifecycle', AbilityLifecycleCallback);
103        console.log("[Demo] registerAbilityLifecycleCallback1 number: " + JSON.stringify(lifecycleid));
104        setTimeout(function () {
105            console.log("[Demo] registerAbilityLifecycleCallback1 listKey: " + JSON.stringify(listKey1));
106            globalThis.mlist1 = listKey1;
107            globalThis.mCallbackid1 = lifecycleid;
108        }, 1000);
109    }
110
111    onDestroy() {
112        console.log("[Demo] MultiMainability1 onDestroy")
113    }
114
115    onWindowStageCreate(windowStage) {
116        // Main window is created, set main page for this ability
117        console.log("[Demo] MultiMainability1 onWindowStageCreate")
118        globalThis.ability1context = this.context;
119
120        windowStage.loadContent('testability/pages/index1', (err, data) => {
121            if (err.code) {
122                console.log('MultiMainability1 loadContent error');
123                return;
124            }
125            console.log('MultiMainability1 loadContent success');
126        });
127    }
128
129    onWindowStageDestroy() {
130        // Main window is destroyed, release UI related resources
131        console.log("[Demo] MultiMainability1 onWindowStageDestroy")
132    }
133
134    onForeground() {
135        // Ability has brought to foreground
136        console.log("[Demo] MultiMainability1 onForeground")
137    }
138
139    onBackground() {
140        // Ability has back to background
141        console.log("[Demo] MultiMainability1 onBackground")
142    }
143};
144