找回密码
 立即注册
查看: 1956|回复: 0

OpenHarmony如何将public-SDK替换为full-SDK

[复制链接]

31

主题

38

帖子

201

积分

中级会员

Rank: 3Rank: 3

积分
201
发表于 2023-8-11 14:20:56 | 显示全部楼层 |阅读模式
本帖最后由 Trainee_Li 于 2023-8-11 14:24 编辑

背景
  在OpenHarmony应用开发中,有时候会用到系统接口,这个时候就需要用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.app.ability.abilityManager.d.ts、@ohos.app.form.formInfo.d.ts、@ohos.bluetooth.d.ts等,如工程必须依赖于系统API,请按照以下步骤替换full-SDK。


下载full-SDK
  如果需要Full SDK 可以从gitee上周转测下载,或者每日构建上下载。
  gitee周转测下载链接:https://gitee.com/openharmony/docs/tree/master/zh-cn/release-notes

  每日构建下载链接:https://gitee.com/openharmony-sig/oh-inner-release-management/blob/master/Release-Testing-Version.md

  查看本地SDK路径(此处以ets工程为例):打开DevEco Studio——>Tools——>OpenHarmony SDK Manager,查看本地SDK安装路径。发现在C:\Users\Administrator\AppData\Local\OpenHarmony\SDKTOP下,版本为3.2.7.5(笔者这里已经完成替换,所以版本是3.2.7.5)。
      1.png
替换SDK

确认下载的SDK版本是否为full-SDK
  a.检查下载文件名是否包含full-SDK字样
   2.png

  b.检查api中是否包含系统API(@ohos.app.ability.abilityManager.d.ts、@ohos.app.form.formInfo.d.ts、@ohos.bluetooth.d.ts等)
注:系统api判定标准以发布api指导文档为主。

替换SDK,以public-SDK-3.2.7.5版本为例。
  以windows为例:
  a.解压已下载的full-SDK文件
  b.替换SDK文件
  备份本地SDK(复制并重命名ets目录下版本信息目录名,或者将ets目录拷贝至其他本地路径)
  打开获取到的本地已安装SDK文件路径并进行备份。
  然后,复制到前面的C:\Users\Administrator\AppData\Local\OpenHarmony\SDKTOP路径下,将其重命名为3.2.7.5,然后将其原来的3.2.x.x备份为3.2.x.x(不要和要替换的full_SDK 3.2.7.5重复就行)
   3.png

  接着,修改3.2.7.5里的oh-uni-package.json配置文件的version字段为当前SDK版本号,若相同则可以忽略。
在3.2.7.5\build-tools\ets-loader目录中打开cmd/powerShell窗口,输入命令npm install下载node_modules依赖包
   4.png
  c.验证系统API接口
  找个系统API接口进行验证,如果不报错,则证明已经完成替换。



回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则