145 Star 1.4K Fork 1.7K

OpenHarmony/applications_app_samples

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

设备管理合集(非系统特性)

介绍

本示例集合设备管理相关(非系统特性)不需要复杂功能展示的模块,展示了各个模块的基础功能,包含:

效果预览

主页 电量信息 RunningLock锁 系统电源管理
home power usb home
设置数据项名称 设备状态感知框架 热管理 USB管理
power usb home power

使用说明

1.首页展示语言基础类库各个子模块菜单,点击进入对应的模块页面。

2.各个子模块界面中点击功能按钮完成各个功能。

3.电量信息:进入电量信息页面,展示设备电量相关信息。

4.RunningLock锁:点击按钮分别实现设备支持的休眠锁类型、设置屏幕休眠时间功能、设置是否通过接近或者远离状态来控制亮灭屏的锁功能。

5.系统电源管理:点击按钮分别实现获取亮灭屏状态、获取电源模式功能。

6.设置数据项名称:点击按钮分别实现获取数据项uri、开关飞行模式、检查应用是否能以悬浮形式显示功能。

7.设备状态感知框架:点击按钮分别实现订阅设备状态服务、取消订阅设备状态服务、查询设备状态并显示功能。

8.热管理:进入热管理页面,展示当前设备热档位信息、设备过热时提示用户。

9.USB管理:打开监听开关后插入USB设备,会有提示并刷新设备列表,关闭监听后插入USB设备不会提示和自动刷新,下拉设备列表可以手动刷新设备列表。

工程目录

DeviceManagementCollection
├── AppScope                                    
│   └── app.json5                               //APP信息配置文件
├── entry/src/main                              //语言基础类库应用首页
│   ├── ets
│   │   ├── entryability
│   │   ├── pages
│   │   │   ├── Index.ets                       //主页入口
│   │   │   ├── components                       
│   │   │   │   └── Capabilities.ets            //根据点击的菜单,展示对应的子界面
│   └── module.json5
│ 
├── common/src/main                             //公共组件及工具类
│   ├── ets
│   │   ├── components
│   │   │   └── CustomDataSource.ets            //自定义DataSource,LazyForEach时使用
│   │   ├── util
│   │   │   ├── Logger.ets                      //日志工具类
│   │   │   └── ResourceUtil.ets                //资源管理工具类
│   └── module.json5
│
├── menuitems/src/main                          //菜单
│   ├── ets
│   │   ├── Index.ets                           //对外提供的接口列表
│   │   ├── menulist                            //菜单组件
│   │   │   └── MenuList.ets                  
│   │   ├── components                          //菜单相关自定义组件
│   └── module.json5
│
├── capabilities/src/main                       //功能集
│   ├── ets
│   │   ├── capabilities                        //各个子模块功能组件
│   │   │   ├── BatteryInfo.ets                 //电量信息
│   │   │   ├── PowerManager.ets                //系统电源管理
│   │   │   ├── RunningLockManager.ets          //RunningLock锁
│   │   │   ├── SettingsManager.ets             //设置数据项名称
│   │   │   ├── StationaryManager.ets           //设置状态感知框架
│   │   │   ├── Thermal.ets                     //热管理
│   │   │   └── UsbManager.ets                  //USB管理
│   │   ├── components                          //子模块相关组件
│   │   │   ├── usbmanager                      //usbmanager相关组件
│   │   │   ├── ColumnOperation.ets             //展示一列功能按钮的组件
│   │   │   └── RadiusColumn.ets                //白色圆角的自定义Columm组件
│   │   ├── model                               //相关数据模型
│   │   └── utils                               //相关工具类
│   └── module.json5

具体实现

1.首页菜单展示:使用一个module,menuitems完成菜单组件的实现,传入要展示的菜单的strarray类型的资源和菜单点击对应的组件即可。使用Navigation和NavRouter组件实现菜单点击进入功能界面,使用LocalStorage实现应用内Ability内数据共享,点击菜单时标记selectedLabel,在entry中的Capabilities组件中,通过selectedLabel显示对应的功能组件。

2.电量信息:使用@ohos.batteryInfo.d.ts 接口获取电池和充放电状态信息。

3.RunningLock锁:使用@ohos.runningLock.d.ts 实现对Runninglock锁的创建、查询、持锁、释放等操作。

4.系统电源管理:使用@ohos.power.d.ts 实现获取亮灭屏状态、查询电源模式功能。

5.设置数据项名称:使用@ohos.settings.d.ts 实现获取获取数据项uri、开关飞行模式、检查应用是否能以悬浮窗形式显示功能。

6.设备状态感知框架:使用@ohos.stationary.d.ts 接口提供设备状态感知能力。

7.热管理:使用@ohos.thermal.d.ts 提供热管理相关的接口,查询热档位以及注册温控等级回调。

8.USB管理:使用@ohos.usbManager.d.ts 实现usb设备列表的获取,使用@ohos.commonEventManager.d.ts 订阅USB设备插入和拔出监听。

相关权限

1.允许应用获取运行锁权限:ohos.permission.RUNNING_LOCK

依赖

不涉及。

约束与限制

1.本示例仅支持标准系统上运行,支持设备:RK3568。

2.本示例为Stage模型,支持API10版本SDK,SDK版本号(API Version 10 Release),镜像版本号(4.0 Release)

3.本示例需要使用DevEco Studio 版本号(4.0 Release)及以上版本才可编译运行。

下载

如需单独下载本工程,执行如下命令:

git init
git config core.sparsecheckout true
echo code/BasicFeature/DeviceManagement/DeviceManagementCollection/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/openharmony/applications_app_samples.git
git@gitee.com:openharmony/applications_app_samples.git
openharmony
applications_app_samples
applications_app_samples
master

搜索帮助