
#2023盲盒+码# 电源管理应用开发指导 原创
【本文正在参加 2023「盲盒」+码有奖征文活动】 https://ost.51cto.com/posts/25284
目录
关于作者:I’m westinyang
序言
测试设备:OpenHarmony 3.2 Release (API9)
本文讲解如何开发一个支持、关机、重启、锁屏以及电源模式切换的电源管理应用,在部分开发板或其它移植的设备上,软件提供的关机重启可能比物理按钮更方便,另外由于原版系统设置中并没有提供电源模式,电源模式切换为性能模式,可以使设备屏幕常亮,防止连接设备调测的时候总是过一会就锁屏的问题。需要用到 @ohos.power
模块,部分接口需要system_basic级别的系统权限。
前置环境
- 需要用到Full-SDK,可以参考官方文档自行编译,或者在 http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist 这里下载
- Full-SDK替换指南:https://docs.openharmony.cn/pages/v3.2/zh-cn/application-dev/quick-start/full-sdk-switch-guide.md/
项目权限配置
entry/src/main/module.json5
访问控制权限修改
openharmony-sdk\9\toolchains\lib\UnsgnedReleasedProfileTemplate.json
开发步骤
状态定义和初始化
电源模式的切换支持4种模式,我们先定义电源模式的状态和对应的中文描述,在主页面显示时,先使用 power.getPowerMode() 获取当前系统的电源模式,用于页面展示中初始化选中。
主要布局代码
这里使用Row横向均分放置三个按钮,下方为多个PowerModeItem自定义组件组合,用于显示电源模式单选框组
电源模式项具体实现
每一个行都用到了Radia单选框组件,并且监听onChange事件,用于处理电源模式的切换,使用 power.setPowerMode 来修改系统的电源模式。
开源地址和截图预览
https://gitee.com/ohos-dev/power-mgt 完整的实现和布局代码,可以参考项目开源仓库
总结
本文可以帮助你学习如何使用 @ohos.power
模块提供的功能,获取和设置电源模式,设置屏幕状态以及重启关机等操作的实现。
持续关注
- 关于作者:I’m westinyang
- 哔哩哔哩:个人主页
