熱管理

2024-01-23 17:47 更新

該模塊提供熱管理相關(guān)的接口,包括熱檔位查詢及注冊回調(diào)等功能。

說明

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

導入模塊

  1. import thermal from '@ohos.thermal';

thermal.registerThermalLevelCallback9+

registerThermalLevelCallback(callback: Callback<ThermalLevel>): void

訂閱熱檔位變化時的回調(diào)提醒。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

參數(shù):

參數(shù)名

類型

必填

說明

callback

Callback<ThermalLevel>

回調(diào)函數(shù),返回變化后的熱檔位。

錯誤碼:

以下錯誤碼的詳細介紹請參見耗電統(tǒng)計錯誤碼。

錯誤碼ID

錯誤信息

4800101

連接服務失敗。

示例:

  1. try {
  2. thermal.registerThermalLevelCallback(level => {
  3. console.info('thermal level is: ' + level);
  4. });
  5. console.info('register thermal level callback success.');
  6. } catch(err) {
  7. console.error('register thermal level callback failed, err: ' + err);
  8. }

thermal.unregisterThermalLevelCallback9+

unregisterThermalLevelCallback(callback?: Callback<void>): void

取消訂閱熱檔位變化時的回調(diào)提醒。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

參數(shù):

參數(shù)名

類型

必填

說明

callback

Callback<void>

回調(diào)函數(shù),無返回值。不填該參數(shù)則取消所有回調(diào)。

錯誤碼:

以下錯誤碼的詳細介紹請參見熱管理錯誤碼

錯誤碼ID

錯誤信息

4800101

連接服務失敗。

示例:

  1. try {
  2. thermal.unregisterThermalLevelCallback(() => {
  3. console.info('unsubscribe thermal level success.');
  4. });
  5. console.info('unregister thermal level callback success.');
  6. } catch(err) {
  7. console.error('unregister thermal level callback failed, err: ' + err);
  8. }

thermal.getLevel9+

getLevel(): ThermalLevel

獲取當前熱檔位信息。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

返回值:

類型

說明

ThermalLevel

熱檔位信息。

錯誤碼:

以下錯誤碼的詳細介紹請參見熱管理錯誤碼。

錯誤碼ID

錯誤信息

4800101

連接服務失敗。

示例:

  1. try {
  2. var level = thermal.getLevel();
  3. console.info('thermal level is: ' + level);
  4. } catch(err) {
  5. console.error('get thermal level failed, err: ' + err);
  6. }

thermal.subscribeThermalLevel(deprecated)

subscribeThermalLevel(callback: AsyncCallback<ThermalLevel>): void

說明

從API version 9開始不再維護,建議使用thermal.registerThermalLevelCallback替代。

訂閱熱檔位變化時的回調(diào)提醒。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

參數(shù):

參數(shù)名

類型

必填

說明

callback

AsyncCallback<ThermalLevel>

回調(diào)函數(shù)。AsyncCallback只返回一個參數(shù)。

示例:

  1. thermal.subscribeThermalLevel((level) => {
  2. console.info('thermal level is: ' + level);
  3. });

thermal.unsubscribeThermalLevel(deprecated)

unsubscribeThermalLevel(callback?: AsyncCallback<void>): void

說明

從API version 9開始不再維護,建議使用thermal.unregisterThermalLevelCallback替代。

取消訂閱熱檔位變化時的回調(diào)提醒。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

參數(shù):

參數(shù)名

類型

必填

說明

callback

AsyncCallback<void>

回調(diào)函數(shù),無返回值。不填該參數(shù)則取消所有回調(diào)。

示例:

  1. thermal.unsubscribeThermalLevel(() => {
  2. console.info('unsubscribe thermal level success.');
  3. });

thermal.getThermalLevel(deprecated)

getThermalLevel(): ThermalLevel

說明

從API version 9開始不再維護,建議使用thermal.getLevel替代。

獲取當前熱檔位信息。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

返回值:

類型

說明

ThermalLevel

熱檔位信息。

示例:

  1. var level = thermal.getThermalLevel();
  2. console.info('thermal level is: ' + level);

ThermalLevel

熱檔位信息。

系統(tǒng)能力: SystemCapability.PowerManager.ThermalManager

名稱

說明

COOL

0

表明設(shè)備處于低溫的狀態(tài),業(yè)務執(zhí)行不受熱控的限制。

NORMAL

1

表明設(shè)備處于正常工作狀態(tài),但溫度不低,需要注意是否臨近發(fā)熱狀態(tài)

WARM

2

表明設(shè)備已經(jīng)進入溫熱狀態(tài),部分無感知業(yè)務需要考慮停止或延遲執(zhí)行。

HOT

3

表明設(shè)備已經(jīng)明顯發(fā)熱,無感知業(yè)務應全面停止,其他業(yè)務應考慮降規(guī)格及負載。

OVERHEATED

4

表明設(shè)備已經(jīng)發(fā)熱嚴重,無感知業(yè)務應全面停止,主要業(yè)務需降低規(guī)格及負載。

WARNING

5

表明設(shè)備已經(jīng)發(fā)熱嚴重并且即將進入緊急狀態(tài),無感知業(yè)務應全面停止,主要業(yè)務應降低至最低規(guī)格。

EMERGENCY

6

表明設(shè)備已經(jīng)進入緊急狀態(tài),所有業(yè)務應當全面停止工作,可保留部分緊急求助功能。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號