如何通过替换Full-SDK解决找不到部分API
source link: https://www.51cto.com/article/719413.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
如何通过替换Full-SDK解决找不到部分API
在进行分布式开发时,发现出现如下报错,deviceManager的部分接口找不到。
经过一番资料查找,了解到IDE下载的SDK为public-SDK,没有包含系统API
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。
下载full-SDK
full-SDK需要前往版本说明书手动进行下载。
例如笔者这里要替换为3.1.7.7的full-SDK,查看OpenHarmony SDK的保存路径。
发现在下载站点在OpenHarmony-v3.1.2-release.md中,下载对应系统的Full SDK压缩包。
下载后打开压缩包,打开我们需要的SDK包,例如笔者这里要ets的SDK。
打开对应压缩包,将该ets文件夹直接解压到OpenHarmony SDK路径下的ets目录下。
将ets重新命名为对应的版本号,如不清楚可以打开该目录下的oh-uni-package.json文件查看version字段例如这里为3.1.7.7(如果目录下原来已存在3.1.7.7,将原来的文件夹删除或者备份到其他路径下,后续替换成功可以删除)。
进入3.1.7.7\build-tools\ets-loader目录下,在该目录下打开cmd输入npm install命令即可。
**PS:**若提示找不到npm,需要配置一下环境变量,将以下路径添加到环境变量中即可。
以上为个人经验分享。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK