鸿蒙原生应用/元服务开发-Stage模型能力接口(七)

@ohos.app.ability.EnvironmentCallback (EnvironmentCallback)
一、说明

EnvironmentCallback模块提供应用上下文ApplicationContext对系统环境变化监听回调的能力,包括onConfigurationUpdated方法。本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。本模块接口仅可在Stage模型下使用。

二、导入模块

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

onConfigurationUpdated(config: Configuration): void;

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

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

参数:

2.EnvironmentCallback.onMemoryLevel

onMemoryLevel(level: AbilityConstant.MemoryLevel): void;

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

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

参数:

回调返回内存微调级别,显示当前内存使用状态。

示例:

复制代码
import UIAbility from '@ohos.app.ability.UIAbility';

let callbackId;

export default class MyAbility extends UIAbility {
  onCreate() {
      console.log('MyAbility onCreate');
      globalThis.applicationContext = this.context.getApplicationContext();
      let EnvironmentCallback  =  {
          onConfigurationUpdated(config){
              console.log('onConfigurationUpdated config:' + JSON.stringify(config));
          },
          onMemoryLevel(level){
              console.log('onMemoryLevel level: ${JSON.stringify(level)}');
          }
      };
      // 1.获取applicationContext
      let applicationContext = globalThis.applicationContext;
      // 2.通过applicationContext注册监听应用内生命周期
      callbackId = applicationContext.registerEnvironmentCallback(EnvironmentCallback);
      console.log('registerEnvironmentCallback number: ' + JSON.stringify(callbackId));
  }
  onDestroy() {
      let applicationContext = globalThis.applicationContext;
      applicationContext.unregisterEnvironmentCallback(callbackId, (error, data) => {
          console.log('unregisterEnvironmentCallback success, err: ' + JSON.stringify(error));
      });
  }
}

本文根据HarmonyOS官方开发文档整理

相关推荐
灰灰勇闯IT28 分钟前
Flutter×鸿蒙深度融合指南:从跨端适配到分布式能力落地(2025最新实战)
分布式·flutter·harmonyos
遇到困难睡大觉哈哈3 小时前
Harmonny os——《从 TypeScript 到 ArkTS 的适配规则》精简笔记
笔记·typescript·harmonyos·鸿蒙
IT从业者张某某3 小时前
DAY1-Open Harmony PC 命令行适配指南(Windows版)环境准备篇
harmonyos·鸿蒙
赵财猫._.4 小时前
HarmonyOS渲染性能优化:组件树复用与局部刷新机制
wpf·harmonyos·ux
赵财猫._.4 小时前
鸿蒙分布式数据库同步:冲突解决与数据一致性策略
wpf·harmonyos·ux
食品一少年5 小时前
【Day7-10】开源鸿蒙之Flutter 的自定义组件封装(1)
flutter·开源·harmonyos
空白诗15 小时前
mdcat 在 HarmonyOS 上的构建与适配
后端·安全·华为·rust·harmonyos
百***354816 小时前
HarmonyOS在智能办公中的文档协作
华为·harmonyos
向哆哆20 小时前
深入理解华为 CANN 中的 Broadcast 算子实现:从底层机制到工程化落地
华为·算子·昇腾·cann
●VON1 天前
在鸿蒙 PC 上使用 Electron 获取本机 IP 地址
tcp/ip·electron·harmonyos