• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.EnvironmentCallback (EnvironmentCallback)
2
3EnvironmentCallback模块提供应用上下文ApplicationContext对系统环境变化监听回调的能力,包括onConfigurationUpdated方法。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8> 本模块接口仅可在Stage模型下使用。
9
10
11## 导入模块
12
13```ts
14import EnvironmentCallback from '@ohos.app.ability.EnvironmentCallback';
15```
16
17
18## EnvironmentCallback.onConfigurationUpdated
19
20onConfigurationUpdated(config: Configuration): void;
21
22注册系统环境变化的监听后,在系统环境变化时触发回调。
23
24**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore
25
26**参数:**
27
28  | 参数名 | 类型 | 必填 | 说明 |
29  | -------- | -------- | -------- | -------- |
30  | config | [Configuration](js-apis-app-ability-configuration.md) | 是 | 变化后的Configuration对象。 |
31
32## EnvironmentCallback.onMemoryLevel
33
34onMemoryLevel(level: AbilityConstant.MemoryLevel): void;
35
36注册系统环境变化的监听后,在系统内存变化时触发回调。
37
38**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore
39
40**参数:**
41
42  | 参数名 | 类型 | 必填 | 说明 |
43  | -------- | -------- | -------- | -------- |
44  | level | [AbilityConstant.MemoryLevel](js-apis-app-ability-abilityConstant.md#abilityconstantmemorylevel) | 是 | 回调返回内存微调级别,显示当前内存使用状态。|
45
46**示例:**
47
48
49  ```ts
50import UIAbility from '@ohos.app.ability.UIAbility';
51
52let callbackId;
53
54export default class MyAbility extends UIAbility {
55    onCreate() {
56        console.log('MyAbility onCreate');
57        globalThis.applicationContext = this.context.getApplicationContext();
58        let EnvironmentCallback  =  {
59            onConfigurationUpdated(config){
60                console.log('onConfigurationUpdated config:' + JSON.stringify(config));
61            },
62            onMemoryLevel(level){
63                console.log('onMemoryLevel level: ${JSON.stringify(level)}');
64            }
65        };
66        // 1.获取applicationContext
67        let applicationContext = globalThis.applicationContext;
68        // 2.通过applicationContext注册监听应用内生命周期
69        callbackId = applicationContext.registerEnvironmentCallback(EnvironmentCallback);
70        console.log('registerEnvironmentCallback number: ' + JSON.stringify(callbackId));
71    }
72    onDestroy() {
73        let applicationContext = globalThis.applicationContext;
74        applicationContext.unregisterEnvironmentCallback(callbackId, (error, data) => {
75            console.log('unregisterEnvironmentCallback success, err: ' + JSON.stringify(error));
76        });
77    }
78}
79  ```