#打卡不停更#OpenHarmony如何将public-SDK替换为full-SDK 原创
OpenHarmony如何将public-SDK替换为full-SDK,以支持更高系统API。
背景
在开发中,我们有时候会用到系统接口,这个时候就需要用full-SDK,那么如何将public-SDK替换为full-SDK呢,本文将给大家给出指引。
SDK分类
public-SDK是提供给应用开发的工具包,跟随DevEco Studio下载,不包含系统应用所需要的高权限API。
full-SDK是提供给OEM厂商开发应用的工具包,不能随DevEco Studio下载,包含了系统应用所需要的高权限API
三方开发者通过DevEco Studio自动下载的API8版本SDK均为public版本。public-SDK不支持开发者使用所有的系统API,包括animator组件、xcomponent组件、@ohos.application.abilityManager.d.ts、@ohos.application.formInfo.d.ts、@ohos.bluetooth.d.ts等,如工程必须依赖于系统API,请按照以下步骤替换full-SDK。
说明:本文中的截图仅为参考,具体的显示界面请以实际使用的DevEco Studio和SDK的版本为准。
下载full-SDK
full-SDK需要手动下载
如下是获取源码路径的方式。
版本源码 | 版本信息 | 下载站点 | SHA256校验码 |
---|---|---|---|
全量代码(标准、轻量和小型系统) | 3.2 Beta2 | 站点 | SHA256校验码 |
Hi3861轻量系统解决方案(二进制) | 3.2 Beta2 | 站点 | SHA256校验码 |
Hi3516轻量系统解决方案-LiteOS(二进制) | 3.2 Beta2 | 站点 | SHA256校验码 |
Hi3516轻量系统解决方案-Linux(二进制) | 3.2 Beta2 | 站点 | SHA256校验码 |
RK3568标准系统解决方案(二进制) | 3.2 Beta2 | 站点 | SHA256校验码 |
标准系统Full SDK包(Mac) | 3.2 Beta2 | 站点 | SHA256校验码 |
标准系统Full SDK包(Windows\Linux) | 3.2 Beta2 | 站点 | SHA256校验码 |
标准系统Public SDK包(Mac) | 3.2 Beta2 | 站点 | SHA256校验码 |
标准系统Public SDK包(Windows\Linux) | 3.2 Beta2 | 站点 | SHA256校验码 |
我们查看自己的电脑,发现是Windows,所以下载标准系统Full SDK包(Windows\Linux)
查看本地SDK路径(此处以ets工程为例)
打开DevEco Studio——>Tools——>OpenHarmony SDK Manager,查看本地SDK安装路径。发现在D:\Program\OpenHarmony\Sdk下,版本为3.2.7.5。
替换SDK
1.确认下载的SDK版本是否为full-SDK,主要检查下载文件名是否包含full字样,如果包含则进行下一步。
2.替换SDK,以public-SDK-3.2.7.5版本为例。
以windows为例:
a.解压已下载的full-SDK文件:ets-windows-3.2.5.5-Beta2.zip
然后复制到前面的D:\Program\OpenHarmony\Sdk\ets路径下,将其重命名为3.2.7.5,然后将其原来的3.2.7.5备份为3.2.7.6
然后将3.2.7.6的oh-uni-package.json文件复制到3.2.7.5,覆盖。
{
"apiVersion": "9",
"displayName": "Ets",
"meta": {
"metaVersion": "3.0.0"
},
"path": "ets",
"releaseType": "Beta3",
"version": "3.2.7.5"
}
然后在
在3.2.7.5\build-tools\ets-loader
目录中打开cmd/powerShell窗口,输入命令npm install
下载node_modules依赖包
验证系统API接口
getXComponentSurfaceId为系统接口,我们调用发现,是可以正常使用的
整个替换完成。
总结
日常开发中,我们经常遇到调用系统接口的需求,本文就以eTS为例,教大家,如何完成全量SDK的替换,为大家在调用系统接口的开发场景中,保驾护航。
打卡打卡,