harmony 鸿蒙@ohos.app.ability.EnvironmentCallback (EnvironmentCallback)

  • 2022-12-13
  • 浏览 (439)

@ohos.app.ability.EnvironmentCallback (EnvironmentCallback)

EnvironmentCallback模块提供应用上下文ApplicationContext对系统环境变化监听回调的能力,包括onConfigurationUpdated方法。

说明:

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

导入模块

import EnvironmentCallback from '@ohos.app.ability.EnvironmentCallback';

EnvironmentCallback.onConfigurationUpdated

onConfigurationUpdated(config: Configuration): void;

注册系统环境变化的监听后,在系统环境变化时触发回调。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

参数:

参数名 类型 必填 说明
config Configuration 变化后的Configuration对象。

EnvironmentCallback.onMemoryLevel

onMemoryLevel(level: AbilityConstant.MemoryLevel): void;

注册系统环境变化的监听后,在系统内存变化时触发回调。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

参数:

参数名 类型 必填 说明
level AbilityConstant.MemoryLevel 回调返回内存微调级别,显示当前内存使用状态。

示例:

import UIAbility from '@ohos.app.ability.UIAbility';
import EnvironmentCallback from '@ohos.app.ability.EnvironmentCallback';

let callbackId: number;

export default class MyAbility extends UIAbility {
    onCreate() {
        console.log('MyAbility onCreate');
        let environmentCallback: EnvironmentCallback  =  {
            onConfigurationUpdated(config){
                console.log(`onConfigurationUpdated config: ${JSON.stringify(config)}`);
            },

            onMemoryLevel(level){
                console.log('onMemoryLevel level: ${JSON.stringify(level)}');
            }
        };
        // 1.获取applicationContext
        let applicationContext = this.context.getApplicationContext();
        // 2.通过applicationContext注册监听应用内生命周期
        callbackId = applicationContext.on('environment', environmentCallback);
        console.log(`registerEnvironmentCallback number: ${JSON.stringify(callbackId)}`);
    }
    onDestroy() {
        let applicationContext = this.context.getApplicationContext();
        applicationContext.off('environment', callbackId, (error, data) => {
            if (error && error.code !== 0) {
                console.error(`unregisterEnvironmentCallback fail, error: ${JSON.stringify(error)}`);
            } else {
                console.log(`unregisterEnvironmentCallback success, data: ${JSON.stringify(data)}`);
            }
        });
    }
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙接口

harmony 鸿蒙系统公共事件定义(待停用)

harmony 鸿蒙系统公共事件定义

harmony 鸿蒙开发说明

harmony 鸿蒙企业设备管理概述(仅对系统应用开放)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager模块)

harmony 鸿蒙@ohos.distributedBundle (分布式包管理)

harmony 鸿蒙@ohos.bundle (Bundle模块)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (企业设备管理扩展能力)

0  赞