如何通過替換Full-SDK解決找不到部分API
前言
在進行分布式開發(fā)時,發(fā)現出現如下報錯,deviceManager的部分接口找不到。
經過一番資料查找,了解到IDE下載的SDK為public-SDK,沒有包含系統(tǒng)API
public-SDK是提供給應用開發(fā)的工具包,跟隨DevEco Studio下載,不包含系統(tǒng)應用所需要的高權限API
full-SDK是提供給OEM廠商開發(fā)應用的工具包,不能隨DevEco Studio下載,包含了系統(tǒng)應用所需要的高權限API
三方開發(fā)者通過DevEco Studio自動下載的API8版本SDK均為public版本。public-SDK不支持開發(fā)者使用所有的系統(tǒng)API,包括animator組件、xcomponent組件、@ohos.application.abilityManager.d.ts、@ohos.application.formInfo.d.ts、@ohos.bluetooth.d.ts等,如工程必須依賴于系統(tǒng)API,請按照以下步驟替換full-SDK。
下載full-SDK
full-SDK需要前往??版本說明書??手動進行下載。
例如筆者這里要替換為3.1.7.7的full-SDK,查看OpenHarmony SDK的保存路徑。
發(fā)現在下載站點在OpenHarmony-v3.1.2-release.md中,下載對應系統(tǒng)的Full SDK壓縮包。
下載后打開壓縮包,打開我們需要的SDK包,例如筆者這里要ets的SDK。
打開對應壓縮包,將該ets文件夾直接解壓到OpenHarmony SDK路徑下的ets目錄下。
將ets重新命名為對應的版本號,如不清楚可以打開該目錄下的oh-uni-package.json?文件查看version字段例如這里為3.1.7.7(如果目錄下原來已存在3.1.7.7,將原來的文件夾刪除或者備份到其他路徑下,后續(xù)替換成功可以刪除)。
進入3.1.7.7\build-tools\ets-loader目錄下,在該目錄下打開cmd輸入npm install命令即可。
**PS:**若提示找不到npm,需要配置一下環(huán)境變量,將以下路徑添加到環(huán)境變量中即可。
以上為個人經驗分享。