鸿蒙5.0开发进阶:@ohos.app.ability.Configuration (Configuration)

往期鸿蒙全套实战文章必看:(文中附带全栈鸿蒙学习资料)


@ohos.app.ability.Configuration (Configuration)

定义环境变化信息。Configuration是接口定义,仅做字段声明。

说明

本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import { Configuration } from '@kit.AbilityKit';

属性

系统能力:SystemCapability.Ability.AbilityBase

名称类型只读可选说明
languagestring

表示应用程序的当前语言,例如“zh"。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

colorModeConfigurationConstant.ColorMode

表示深浅色模式,默认为浅色。取值范围:

- COLOR_MODE_NOT_SET:未设置

- COLOR_MODE_LIGHT:浅色模式

- COLOR_MODE_DARK:深色模式

元服务API: 从API version 11开始,该接口支持在元服务中使用。

directionConfigurationConstant.Direction

表示屏幕方向,取值范围:

- DIRECTION_NOT_SET:未设置

- DIRECTION_HORIZONTAL:水平方向

- DIRECTION_VERTICAL:垂直方向

元服务API: 从API version 11开始,该接口支持在元服务中使用。

screenDensityConfigurationConstant.ScreenDensity

表示屏幕像素密度,取值范围:

- 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

元服务API: 从API version 11开始,该接口支持在元服务中使用。

displayIdnumber

表示应用所在的物理屏幕ID。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

hasPointerDeviceboolean

指示指针类型设备是否已连接,如键鼠、触控板等。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

fontSizeScale12+number

字体大小缩放比例,取值范围:0~3.2,默认值为1。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

fontWeightScale12+number

字体粗细缩放比例,取值范围:0~1.25,默认值为1。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

mcc12+string

移动设备国家代码。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

mnc12+string

移动设备网络代码。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

示例:

import { UIAbility, AbilityConstant, EnvironmentCallback, Want } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    let envCallback: EnvironmentCallback = {
      onConfigurationUpdated(config) {
        console.info(`envCallback onConfigurationUpdated success: ${JSON.stringify(config)}`);
        let language = config.language;
        let colorMode = config.colorMode;
        let direction = config.direction;
        let screenDensity = config.screenDensity;
        let displayId = config.displayId;
        let hasPointerDevice = config.hasPointerDevice;
        let fontSizeScale = config.fontSizeScale;
        let fontWeightScale = config.fontWeightScale;
        let mcc = config.mcc;
        let mnc = config.mnc;
      },
      onMemoryLevel(level) {
        console.log(`onMemoryLevel level: ${level}`);
      }
    };
    try {
      let applicationContext = this.context.getApplicationContext();
      let callbackId = applicationContext.on('environment', envCallback);
      console.log(`callbackId: ${callbackId}`);
    } catch (paramError) {
      console.error(`error: ${(paramError as BusinessError).code}, ${(paramError as BusinessError).message}`);
    }
  }
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值