• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.Configuration (Configuration)
2
3定义环境变化信息。Configuration是接口定义,仅做字段声明。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import Configuration from '@ohos.app.ability.Configuration';
13```
14
15**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityBase
16
17  | 名称 | 类型 | 可读 | 可写 | 说明 |
18| -------- | -------- | -------- | -------- | -------- |
19| language | string | 是 | 是 | 表示应用程序的当前语言。例如:zh。 |
20| colorMode | [ColorMode](js-apis-app-ability-configurationConstant.md#configurationconstantcolormode) | 是 | 是 | 表示深浅色模式,取值范围:未设置(COLOR_MODE_NOT_SET),浅色模式(COLOR_MODE_LIGHT),深色模式(COLOR_MODE_DARK)。默认为浅色。 |
21| direction | [Direction](js-apis-app-ability-configurationConstant.md#configurationconstantdirection) | 是 | 否 | 表示屏幕方向,取值范围:未设置(DIRECTION_NOT_SET),水平方向(DIRECTION_HORIZONTAL),垂直方向(DIRECTION_VERTICAL)。 |
22| screenDensity  | [ScreenDensity](js-apis-app-ability-configurationConstant.md#configurationconstantscreendensity) | 是 | 否 | 表示屏幕像素密度,取值范围:未设置(SCREEN_DENSITY_NOT_SET),SCREEN_DENSITY_SDPI(120)、SCREEN_DENSITY_MDPI(160)、SCREEN_DENSITY_LDPI(240)、SCREEN_DENSITY_XLDPI(320)、SCREEN_DENSITY_XXLDPI(480)、SCREEN_DENSITY_XXXLDPI(640)。 |
23| displayId  | number | 是 | 否 | 表示应用所在的物理屏幕Id。 |
24| hasPointerDevice  | boolean | 是 | 否 | 指示指针类型设备是否已连接,如键鼠、触控板等。 |
25
26具体字段描述参考ohos.app.ability.Configuration.d.ts文件
27
28**示例:**
29
30  ```ts
31  import UIAbility from '@ohos.app.ability.UIAbility';
32
33  export default class EntryAbility extends UIAbility {
34    onCreate(want, launchParam) {
35      let envCallback = {
36        onConfigurationUpdated(config) {
37          console.info(`envCallback onConfigurationUpdated success: ${JSON.stringify(config)}`);
38          let language = config.language;
39          let colorMode = config.colorMode;
40          let direction = config.direction;
41          let screenDensity = config.screenDensity;
42          let displayId = config.displayId;
43          let hasPointerDevice = config.hasPointerDevice;
44        }
45      };
46      try {
47        let applicationContext = this.context.getApplicationContext();
48        let callbackId = applicationContext.on('environment', envCallback);
49        console.log('callbackId: ' + callbackId);
50      } catch (paramError) {
51        console.log('error: ' + paramError.code + ', ' + paramError.message);
52      }
53    }
54  }
55  ```
56