對(duì)系統(tǒng)環(huán)境變化監(jiān)聽回調(diào)的能力

2024-01-22 18:56 更新

EnvironmentCallback模塊提供應(yīng)用上下文ApplicationContext對(duì)系統(tǒng)環(huán)境變化監(jiān)聽回調(diào)的能力,包括onConfigurationUpdated方法。

說(shuō)明

本模塊首批接口從API version 9 開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。

本模塊接口僅可在Stage模型下使用。

導(dǎo)入模塊

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

EnvironmentCallback.onConfigurationUpdated

onConfigurationUpdated(config: Configuration): void;

注冊(cè)系統(tǒng)環(huán)境變化的監(jiān)聽后,在系統(tǒng)環(huán)境變化時(shí)觸發(fā)回調(diào)。

系統(tǒng)能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

參數(shù):

參數(shù)名類型必填說(shuō)明
configConfiguration變化后的Configuration對(duì)象。

EnvironmentCallback.onMemoryLevel

onMemoryLevel(level: AbilityConstant.MemoryLevel): void;

注冊(cè)系統(tǒng)環(huán)境變化的監(jiān)聽后,在系統(tǒng)內(nèi)存變化時(shí)觸發(fā)回調(diào)。

系統(tǒng)能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

參數(shù):

參數(shù)名類型必填說(shuō)明
levelAbilityConstant.MemoryLevel回調(diào)返回內(nèi)存微調(diào)級(jí)別,顯示當(dāng)前內(nèi)存使用狀態(tài)。

示例:

  1. import UIAbility from '@ohos.app.ability.UIAbility';
  2. let callbackId;
  3. export default class MyAbility extends UIAbility {
  4. onCreate() {
  5. console.log('MyAbility onCreate');
  6. globalThis.applicationContext = this.context.getApplicationContext();
  7. let EnvironmentCallback = {
  8. onConfigurationUpdated(config){
  9. console.log('onConfigurationUpdated config:' + JSON.stringify(config));
  10. },
  11. onMemoryLevel(level){
  12. console.log('onMemoryLevel level: ${JSON.stringify(level)}');
  13. }
  14. };
  15. // 1.獲取applicationContext
  16. let applicationContext = globalThis.applicationContext;
  17. // 2.通過(guò)applicationContext注冊(cè)監(jiān)聽?wèi)?yīng)用內(nèi)生命周期
  18. callbackId = applicationContext.registerEnvironmentCallback(EnvironmentCallback);
  19. console.log('registerEnvironmentCallback number: ' + JSON.stringify(callbackId));
  20. }
  21. onDestroy() {
  22. let applicationContext = globalThis.applicationContext;
  23. applicationContext.unregisterEnvironmentCallback(callbackId, (error, data) => {
  24. console.log('unregisterEnvironmentCallback success, err: ' + JSON.stringify(error));
  25. });
  26. }
  27. }
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)