full-sdk-switch-guide.md 3.9 KB
Newer Older
E
ester.zhou 已提交
1 2
# Guide to Switching to Full SDK

3
Both the public SDK and full SDK are toolkits for application development. <br>The public SDK is intended for application developers and provided as standard in DevEco Studio. It does not contain system APIs – APIs required by system applications.
E
ester.zhou 已提交
4 5 6 7 8

The full SDK is intended for original equipment manufacturers (OEMs) and provided separately. It contains system APIs.

The SDK of API version 8 provided in DevEco Studio is a public SDK. If your project depends on any system API, such as the **animator** component, **xcomponent** component, or APIs in **@ohos.application.abilityManager.d.ts**, **@ohos.application.formInfo.d.ts**, or **@ohos.bluetooth.d.ts**, switch to the full SDK by performing the following steps.

9 10 11
> **NOTE**
>
> The screenshots in this document are for reference only.
E
ester.zhou 已提交
12

13
## Downloading the Full SDK
E
ester.zhou 已提交
14

15
Manually download the system-specific full SDK package from the mirror. For details, see [Release Notes](../../release-notes/OpenHarmony-v3.2-beta2.md).
E
ester.zhou 已提交
16

17
## Checking the Local SDK Location
E
ester.zhou 已提交
18

19
In this example, an eTS project is used. For a JS project, replace **ets** with **js**.
E
ester.zhou 已提交
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

In DevEco Studio, choose **Tools** > **OpenHarmony SDK Manager** to check the location of the local SDK.

![](figures/en-us_image_0000001655128939.png)

![image-20220613160524053](figures/en-us_image_0000001655128998.png)


## Replacing the SDK

1. Make sure the downloaded SDK is a full SDK.

   a. Verify that the name of the downloaded file contains **sdk-full**.

   ![image-20220613220702504](figures/en-us_image_0000001655129232.png)

   b. Verify that the SDK contains system APIs (such as APIs defined in **@ohos.application.abilityManager.d.ts**, **@ohos.application.formInfo.d.ts**, and **@ohos.bluetooth.d.ts**).

   Note: The criteria for identifying system APIs are subject to the released API documentation.

40
2. Replace the SDK. The following uses public-SDK-3.x.x.x for Windows as an example.
E
ester.zhou 已提交
41

42
    a. Decompress the downloaded full SDK file: `ets-windows-3.x.x.x-Release.zip`
E
ester.zhou 已提交
43 44 45 46 47

   ![image-20220613165018184](figures/en-us_image_0000001655129264.png)

   b. Replace the SDK files.

48
   Back up the local SDK files. (Copy and rename the version directory in the **ets** directory, or copy the entire **ets** directory to another local path.)
E
ester.zhou 已提交
49 50 51 52 53

   Go to the obtained location of the local installed SDK and back up the files therein.

   ![image-20220613161352157](figures/en-us_image_0000001655129041.png)

54
   Note: The name of the backup version directory must be different from the value of **version** field in the **oh-uni-package.json** file. In the example below, the name of the backup version directory is **3.x.x.x_backup**.
E
ester.zhou 已提交
55 56 57

   ![image-20220613165018184](figures/en-us_image_0000001655129398.png)

58
   The configuration in the **oh-uni-package.json** file is as follows, where the value of `apiVersion` is subject to the API version of the SDK, and the value of `version` is subject to the version number in the SDK file.
E
ester.zhou 已提交
59 60 61

   ```
   {
62
     "apiVersion": "X",
E
ester.zhou 已提交
63 64 65 66 67 68
     "displayName": "Ets",
     "meta": {
       "metaVersion": "3.0.0"
     },
     "path": "ets",
     "releaseType": "Release",
69
     "version": "3.x.x.x"
E
ester.zhou 已提交
70 71
   }
   ```
72
   
E
ester.zhou 已提交
73

74
   Delete all files in the original SDK (3.x.x.x) directory. Failure to do so may result in some files being unable to be overwritten.
E
ester.zhou 已提交
75 76 77 78 79

   

   Copy the full SDK to the location of the local SDK.

80
   Copy all files in the **ets** directory in the full SDK to the **ets\*3.x.x.x*** directory in the location of the local SDK.
E
ester.zhou 已提交
81 82 83 84 85

   Change the value of **version** in the **oh-uni-package.json** file to the current SDK version number.

   

86
   In the ***3.x.x.x*\build-tools\ets-loader** directory, open the **cmd/powerShell** window and run the `npm install` command to download the **node_modules** dependency package.
E
ester.zhou 已提交
87 88 89 90 91 92

   ![image-20220613171111405](figures/en-us_image_0000001655129333.png)

   

   c. Check for system APIs.
93
   
E
ester.zhou 已提交
94
   ![image-20220613213038104](figures/en-us_image_0000001655129372.png)