#鸿蒙通关秘籍#如何通过UIAbility订阅并响应系统环境变化?

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
墨s旋律BI

UIAbility提供了onConfigurationUpdate()方法用于订阅系统环境变量的改变。当系统配置发生变化时,可以通过Configuration对象来获取新的配置,从而在应用中进行相应的处理,不必重启UIAbility。

bash import { AbilityConstant, Configuration, UIAbility, Want } from '@kit.AbilityKit'; import { hilog } from '@kit.PerformanceAnalysisKit';

const TAG: string = '[EntryAbility]'; const DOMAIN_NUMBER: number = 0xFF00;

let systemLanguage: string | undefined;

export default class EntryAbility extends UIAbility { onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { systemLanguage = this.context.config.language; hilog.info(DOMAIN_NUMBER, TAG, systemLanguage is ${systemLanguage}); }

onConfigurationUpdate(newConfig: Configuration): void { hilog.info(DOMAIN_NUMBER, TAG, onConfigurationUpdated systemLanguage is ${systemLanguage}, newConfig: ${JSON.stringify(newConfig)}); if (systemLanguage !== newConfig.language) { hilog.info(DOMAIN_NUMBER, TAG, systemLanguage from ${systemLanguage} changed to ${newConfig.language}); systemLanguage = newConfig.language; } } }

分享
微博
QQ
微信
回复
1天前
相关问题
如何订阅系统环境变量的变化
384浏览 • 1回复 待解决