# 电æºé»˜è®¤ä¼‘çœ è¡Œä¸ºå®šåˆ¶å¼€å‘æŒ‡å¯¼ ## 概述 ### 简介 当å‰OpenHarmonyçå±åŽä¼šå¯åЍè¿è¡Œé”循环检测线程,然åŽé»˜è®¤è¿›å…¥ä¼‘çœ çŠ¶æ€ã€‚ä¸åŒè®¾å¤‡çš„ç屿–¹å¼ä¸ç›¸åŒï¼Œå¯èƒ½ä¸ºåˆç›–çå±ã€è¶…æ—¶ç屿ˆ–是按电æºé”®çå±ç‰ï¼›çå±åŽçš„默认行为也ä¸ç›¸åŒï¼Œå¯èƒ½ä¸ºæ— 动作ã€å°†å±å¹•ä¸‹ç”µï¼Œæˆ–æ˜¯è¿›å…¥ä¼‘çœ çŠ¶æ€ç‰ã€‚为æ¤ï¼ŒOpenHarmonyæä¾›ç”µæºé»˜è®¤ä¼‘çœ è¡Œä¸ºçš„å®šåˆ¶æ–¹å¼ï¼Œäº§å“å¯ä»¥æ ¹æ®å…·ä½“çš„è®¾è®¡è§„æ ¼æ¥å®šåˆ¶æ¤ç‰¹æ€§ã€‚ ### 约æŸä¸Žé™åˆ¶ é…ç½®ç–略: 产å“定制的é…ç½®è·¯å¾„ï¼Œéœ€è¦æ ¹æ®[é…ç½®ç–ç•¥](https://gitee.com/openharmony/customization_config_policy)å†³å®šã€‚æœ¬å¼€å‘æŒ‡å¯¼ä¸çš„定制路径以`/vendor`进行举例,请开å‘è€…æ ¹æ®å…·ä½“的产å“é…ç½®ç–略,修改定制路径。 ## 开呿Œ‡å¯¼ ### æå»ºçŽ¯å¢ƒ è®¾å¤‡è¦æ±‚: æ ‡å‡†ç³»ç»Ÿå¼€å‘æ¿ï¼Œå¦‚DAYU200/Hi3516DV300å¼€æºå¥—件。 çŽ¯å¢ƒè¦æ±‚: Linuxè°ƒæµ‹çŽ¯å¢ƒï¼Œç›¸å…³è¦æ±‚å’Œé…ç½®å¯å‚考《[快速入门](../quick-start/quickstart-overview.md)》 ### 开呿¥éª¤ 本文以[DAYU200](https://gitee.com/openharmony/vendor_hihope/tree/master/rk3568)为例介ç»ç”µæºé»˜è®¤ä¼‘çœ è¡Œä¸ºçš„å®šåˆ¶æ–¹æ³•ã€‚ 1. 在产å“目录`/vendor/hihope/rk3568`下创建power_manager文件夹。 2. å‚考电æºç®¡ç†æœåŠ¡ç»„ä»¶ä¸çš„[电æºé»˜è®¤ä¼‘çœ è¡Œä¸ºé…置文件夹](https://gitee.com/openharmony/powermgr_power_manager/tree/master/services/native/profile)åˆ›å»ºç›®æ ‡æ–‡ä»¶å¤¹ï¼Œå¹¶å®‰è£…åˆ°`/vendor/hihope/rk3568/power_manager`ç›®å½•ä¸‹ï¼Œæ–‡ä»¶æ ¼å¼å¦‚下: ```text profile ├── BUILD.gn ├── power_suspend.json ``` 3. 编写定制的power_suspend.json,定制åŽçš„电æºé»˜è®¤ä¼‘çœ è¡Œä¸ºç¤ºä¾‹å¦‚ä¸‹ï¼š ```json { "powerkey": { "action": 1, "delayMs": 0 }, "timeout": { "action": 1, "delayMs": 0 }, "lid": { "action": 1, "delayMs": 0 }, "switch": { "action": 1, "delayMs": 0 } } ``` **表1** ä¼‘çœ æºè¯´æ˜Ž | ä¼‘çœ æº | æè¿° | | -------- | -------- | | powerkey | 电æºé”®çå± | | timeout | è¶…æ—¶çå± | | lid | 皮套çå± | | switch | åˆç›–çå± | **表2** ä¼‘çœ æºé…置说明 | é…置项 | æè¿° | | -------- | -------- | | action | 执行动作,需é…置具体枚举值数å—,详细说明è§ä¸‹è¡¨ã€‚ | | delayMs | 延迟时间,å•使¯«ç§’。 | **表3** action说明 | action | å–值 | æè¿° | | -------- | -------- | -------- | | ACTION_NONE | 0 | æ— åŠ¨ä½œ | | ACTION_AUTO_SUSPEND | 1 | 自动进入ç¡çœ | | ACTION_FORCE_SUSPEND | 2 | 强制进入ç¡çœ | | ACTION_HIBERNATE | 3 | è¿›å…¥ä¼‘çœ | | ACTION_SHUTDOWN | 4 | 关机 | 4. å‚考[电æºé»˜è®¤ä¼‘çœ è¡Œä¸ºçš„é…置文件夹ä¸çš„BUILD.gn](https://gitee.com/openharmony/powermgr_power_manager/blob/master/services/native/profile/BUILD.gn)编写BUILD.gn文件,将power_suspend.json打包到`/vendor/etc/power_config`目录下,é…置如下: ```shell import("//build/ohos.gni") #引用build/ohos.gni ohos_prebuilt_etc("suspend_config") { source = "power_suspend.json" relative_install_dir = "power_config" install_images = [ chipset_base_dir ] #安装到vendor目录下的必è¦é…ç½® part_name = "product_rk3568" #part_name为product_rk3568,以实现åŽç»ç¼–译 } ``` 5. å°†ç¼–è¯‘ç›®æ ‡æ·»åŠ åˆ°`/vendor/hihope/rk3568`目录下[ohos.build](https://gitee.com/openharmony/vendor_hihope/blob/master/rk3568/ohos.build)çš„"module_list"ä¸ï¼Œä¾‹å¦‚: ```json { "parts": { "product_rk3568": { "module_list": [ "//vendor/hihope/rk3568/default_app_config:default_app_config", "//vendor/hihope/rk3568/image_conf:custom_image_conf", "//vendor/hihope/rk3568/preinstall-config:preinstall-config", "//vendor/hihope/rk3568/resourceschedule:resourceschedule", "//vendor/hihope/rk3568/etc:product_etc_conf", "//vendor/hihope/rk3568/power_manager/profile:suspend_config" //æ·»åŠ suspend_config的编译 ] } }, "subsystem": "product_hihope" } ``` “//vendor/hihope/rk3568/power_manager/â€ä¸ºæ–‡ä»¶å¤¹è·¯å¾„,“profileâ€ä¸ºåˆ›å»ºçš„æ–‡ä»¶å¤¹åå—,“suspend_configâ€ä¸ºç¼–è¯‘ç›®æ ‡ã€‚ 6. å‚考《[快速入门](../quick-start/quickstart-overview.md)》编译定制版本,编译命令如下: ```shell ./build.sh --product-name rk3568 --ccache ``` 7. 将定制版本烧录到DAYU200开呿¿ä¸ã€‚ ### è°ƒæµ‹éªŒè¯ 1. ä»¥æ–°çš„ä¼‘çœ æºé…置文件为例,更改之åŽï¼š ```json { "powerkey": { "action": 4, "delayMs": 0 }, "timeout": { "action": 1, "delayMs": 0 }, "lid": { "action": 1, "delayMs": 0 }, "switch": { "action": 1, "delayMs": 0 } } ``` 2. 开机åŽï¼Œç‚¹å‡»ç”µæºæŒ‰é”®ã€‚ 设备进入关机状æ€ã€‚ 3. 冿¬¡å¼€æœºåŽç‰å¾…一段时间。 设备进入黑å±çжæ€ã€‚