系统属性部件syspara_lite负责提供获取与设置操作系统相关的系统属性,包括默认系统属性、OEM厂商系统属性和自定义系统属性。为满足OpenHarmony产品兼容性规范,产品解决方案需要实现获取设备信息的接口,如:产品名、品牌名、厂家名等,同时提供设置/读取系统属性的接口。在《移植案例与原理 - startup子系统之syspara_lite系统属性部件》中,我们介绍了移植开发板时如何适配系统属性部件syspara_lite,并介绍了相关的运行机制原理。本文主要介绍如何使用syspara_lite系统属性部件的接口,然后详细介绍下syspara_lite系统属性部件的各个接口。
1、系统参数syspara_lite部件使用例子
下面是系统参数syspara_lite部件使用例子,来自https://gitee.com/openharmony/startup_syspara_lite。⑴处获取设备类型,⑵处获取厂商名称,⑶处获取品牌名称。其他系统属性接口调用的例子类似,详细的接口说明下文会提供。
⑴ char* value1 = GetDeviceType();
printf("Device type =%s\n", value1);
free(value1);
⑵ char* value2 = GetManufacture();
printf("Manufacture =%s\n", value2);
free(value2);
⑶ char* value3 = GetBrand();
printf("GetBrand =%s\n", value3);
free(value3);
2、系统参数syspara_lite部件接口信息
在文件base\startup\syspara_lite\interfaces\innerkits\native\syspara\include\parameter.h中定义了系统属性的接口。系统属性接口说明如下表所示:
接口名 | 描述 |
---|---|
int GetParameter(const char* key, const char* def, char* value, unsigned int len) | 获取系统参数 |
int SetParameter(const char* key, const char* value) | 设置/更新系统参数 |
const char* GetDeviceType(void) | 返回当前设备类型 |
const char* GetManufacture(void) | 返回当前设备生产厂家信息 |
const char* GetBrand(void) | 返回当前设备品牌信息 |
const char* GetMarketName(void) | 返回当前设备传播名 |
const char* GetProductSeries(void) | 返回当前设备产品系列名 |
const char* GetProductModel(void) | 返回当前设备认证型号 |
const char* GetSoftwareModel(void) | 返回当前设备内部软件子型号 |
const char* GetHardwareModel(void) | 返回当前设备硬件版本号 |
const char* GetHardwareProfile(void) | 返回当前设备硬件profile |
const char* GetSerial(void) | 返回当前设备序列号(SN号) |
const char* GetOSFullName(void) | 返回操作系统名 |
const char* GetDisplayVersion(void) | 返回当前设备用户可见的软件版本号 |
const char* GetBootloaderVersion(void) | 返回当前设备Bootloader版本号 |
const char* GetSecurityPatchTag(void) | 返回安全补丁标签 |
const char* GetAbiList(void) | 返回当前设备支持的指令集(Abi)列表 |
int GetSdkApiVersion(void) | 返回与当前系统软件匹配的SDK API 版本号 |
int GetFirstApiVersion(void) | 返回系统软件首版本SDK API 版本号 |
const char* GetIncrementalVersion(void) | 返回差异版本号 |
const char* GetVersionId(void) | 返回版本id |
const char* GetBuildType(void) | 返回构建类型 |
const char* GetBuildUser(void) | 返回构建账户用户名 |
const char* GetBuildHost(void) | 返回构建主机名 |
const char* GetBuildTime(void) | 返回构建时间 |
const char* GetBuildRootHash(void) | 返回当前版本hash |
const char* GetOsReleaseType(void) | 返回系统发布类型 |
int GetDevUdid(char *udid, int size) | 获取设备udid |
小结
本文介绍了如何使用syspara_lite系统属性部件的接口,然后详细介绍下syspara_lite系统属性部件的各个接口。
如果想更深入的学习 OpenHarmony (鸿蒙南向)全栈开发的内容,可以参考以下学习文档:
OpenHarmony 开发环境搭建:https://qr18.cn/CgxrRy
《OpenHarmony源码解析》:https://qr18.cn/CgxrRy
- 搭建开发环境
- Windows 开发环境的搭建
- Ubuntu 开发环境搭建
- Linux 与 Windows 之间的文件共享
- ……
系统架构分析:https://qr18.cn/CgxrRy
- 构建子系统
- 启动流程
- 子系统
- 分布式任务调度子系统
- 分布式通信子系统
- 驱动子系统
- ……
OpenHarmony 设备开发学习手册:https://qr18.cn/CgxrRy
OpenHarmony面试题(内含参考答案):https://qr18.cn/CgxrRy
写在最后
- 如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
- 点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
- 关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。
- 想要获取更多完整鸿蒙最新学习资源,请移步前往小编:
https://gitee.com/MNxiaona/733GH