鸿蒙原生应用/元服务开发-Stage模型能力接口(七)
2023-12-20 07:53:23
@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官方开发文档整理
文章来源:https://blog.csdn.net/weixin_69135651/article/details/135080156
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!