• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import Ability from '@ohos.app.ability.UIAbility'
2import Window from '@ohos.window'
3
4import HiLog from "../utils/HiLog";
5import MmsPreferences from "../utils/MmsPreferences";
6import WorkFactory, { WorkerType } from "../workers/WorkFactory";
7import simCardService from "../service/SimCardService";
8
9const TAG = "app";
10
11export default class MainAbility extends Ability {
12    onCreate(want, launchParam) {
13        HiLog.i(TAG, "Ability onCreate com.ohos.mms version: 1.0.0.41");
14        globalThis.mmsContext = this.context;
15        globalThis.abilityWant = want;
16        globalThis.needToUpdate = true;
17        MmsPreferences.getInstance().initPreferences();
18        globalThis.DataWorker = WorkFactory.getWorker(WorkerType.DataWorker);
19    }
20
21    onNewWant(want, launchParam) {
22        HiLog.i(TAG, 'Application onNewWant');
23        globalThis.abilityWant = want;
24    }
25
26    onWindowStageCreate(windowStage: Window.WindowStage) {
27        // Main window is created, set main page for this ability
28        windowStage.loadContent('pages/index', (err, data) => {
29            if (err.code) {
30                HiLog.e(TAG, 'testTag', 'Failed to load the content.');
31                return;
32            }
33            HiLog.i(TAG, 'testTag', 'Succeeded in loading the content. Data: %{public}s');
34        });
35    }
36
37    onWindowStageDestroy() {
38        // Main window is destroyed, release UI related resources
39        HiLog.i(TAG, 'Ability onWindowStageDestroy');
40    }
41
42    onForeground() {
43        // Ability has brought to foreground
44        HiLog.i(TAG, 'Ability onForeground');
45        simCardService.init();
46    }
47
48    onBackground() {
49        // Ability has back to background
50        HiLog.i(TAG, 'Ability onBackground');
51        simCardService.deInit();
52    }
53
54    onDestroy() {
55        HiLog.i(TAG, 'Ability onDestroy');
56        globalThis.DataWorker.close();
57    }
58}
59