鸿蒙原生应用/元服务开发-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官方开发文档整理

相关推荐
盐焗西兰花3 小时前
鸿蒙学习实战之路-ArkTS循环渲染_ForEach使用指南
学习·华为·harmonyos
俩毛豆6 小时前
【鸿蒙生态共建】意图框架的使用-通过小艺调起京东发起搜索《精通HarmonyOS NEXT :鸿蒙App开发入门与项目化实战》读者福利
华为·harmonyos·小艺
Devil枫9 小时前
HarmonyOS 应用草稿箱功能设计方案(安全可靠+轻量化存储)
华为·harmonyos
C雨后彩虹13 小时前
二维伞的雨滴效应
java·数据结构·算法·华为·面试
数智顾问13 小时前
(111页PPT)华为业务变革框架及战略级项目管理(附下载方式)
大数据·运维·华为
芒鸽15 小时前
windows上使用Lycium 交叉编译移植鸿蒙三方库指南
windows·华为·harmonyos
FrameNotWork17 小时前
HarmonyOS 广告 SDK 封装实战:从原生 Ads Kit 到可复用广告组件
华为·harmonyos
木斯佳17 小时前
[鸿蒙2025领航者闯关] 把养老院装进口袋:如何利用鸿蒙6新特性探索智慧医养场景
华为·harmonyos
wangxiaowu19861 天前
HarmonyOS NEXT和通用JSBridge
华为·harmonyos
cz追天之路1 天前
华为机考 ------ 识别有效的IP地址和掩码并进行分类统计
javascript·华为·typescript·node.js·ecmascript·less·css3