169570cc8Sopenharmony_ci# hnp_api.h 269570cc8Sopenharmony_ci 369570cc8Sopenharmony_ci## 概述 469570cc8Sopenharmony_ci 569570cc8Sopenharmony_ci提供支持Native软件的安装和卸载功能。 669570cc8Sopenharmony_ci 769570cc8Sopenharmony_ci### 文件 869570cc8Sopenharmony_ci 969570cc8Sopenharmony_ci| 名称 | 描述 | 1069570cc8Sopenharmony_ci| -------- | -------- | 1169570cc8Sopenharmony_ci| hnp_api.h | 提供支持Native软件的安装和卸载的函数。<br/>**引用文件**:<hnp_api.h><br/>**库**:libhnpapi.z.so | 1269570cc8Sopenharmony_ci 1369570cc8Sopenharmony_ci 1469570cc8Sopenharmony_ci### 结构体定义 1569570cc8Sopenharmony_ciNA 1669570cc8Sopenharmony_ci 1769570cc8Sopenharmony_ci### 函数 1869570cc8Sopenharmony_ci 1969570cc8Sopenharmony_ci| 名称 | 描述 | 2069570cc8Sopenharmony_ci| -------- | -------- | 2169570cc8Sopenharmony_ci| [NativeInstallHnp](#nativeinstallhnp) | 安装Native软件到设备中 | 2269570cc8Sopenharmony_ci| [NativeUnInstallHnp](#nativeuninstallhnp)| 卸载设备中已安装的Native软件 | 2369570cc8Sopenharmony_ci 2469570cc8Sopenharmony_ci## 函数说明 2569570cc8Sopenharmony_ci 2669570cc8Sopenharmony_ci### NativeInstallHnp 2769570cc8Sopenharmony_ci 2869570cc8Sopenharmony_ci``` 2969570cc8Sopenharmony_ciint NativeInstallHnp(const char *userId, const char *hnpRootPath, const HapInfo *hapInfo, int installOptions); 3069570cc8Sopenharmony_ci``` 3169570cc8Sopenharmony_ci 3269570cc8Sopenharmony_ci**描述** 3369570cc8Sopenharmony_ci 3469570cc8Sopenharmony_ci 安装Native软件到设备中。 3569570cc8Sopenharmony_ci 3669570cc8Sopenharmony_ci 参数: 3769570cc8Sopenharmony_ci 3869570cc8Sopenharmony_ci userId:用户ID; 3969570cc8Sopenharmony_ci 4069570cc8Sopenharmony_ci hapPath:hap包所在路径。用于签名校验 4169570cc8Sopenharmony_ci 4269570cc8Sopenharmony_ci hnpRootPath:hnp安装包存放路径; 4369570cc8Sopenharmony_ci 4469570cc8Sopenharmony_ci hapInfo:hap应用软件信息,结构如下。 4569570cc8Sopenharmony_ci ``` 4669570cc8Sopenharmony_ci #define PACK_NAME_LENTH 256 4769570cc8Sopenharmony_ci #define HAP_PATH_LENTH 256 4869570cc8Sopenharmony_ci #define ABI_LENTH 128 4969570cc8Sopenharmony_ci 5069570cc8Sopenharmony_ci typedef struct HapInfo { 5169570cc8Sopenharmony_ci char packageName[PACK_NAME_LENTH]; // 包名 5269570cc8Sopenharmony_ci char hapPath[HAP_PATH_LENTH]; // hap文件路径 5369570cc8Sopenharmony_ci char abi[ABI_LENTH]; // abi路径 5469570cc8Sopenharmony_ci } HapInfo; 5569570cc8Sopenharmony_ci ``` 5669570cc8Sopenharmony_ci 5769570cc8Sopenharmony_ci installOptions:安装选项。其中每一位对应的选项信息枚举如下。 5869570cc8Sopenharmony_ci ``` 5969570cc8Sopenharmony_ci typedef enum { 6069570cc8Sopenharmony_ci OPTION_INDEX_FORCE = 0, /* installed forcely */ 6169570cc8Sopenharmony_ci OPTION_INDEX_BUTT 6269570cc8Sopenharmony_ci } HnpInstallOptionIndex; 6369570cc8Sopenharmony_ci ``` 6469570cc8Sopenharmony_ci 6569570cc8Sopenharmony_ci**返回:** 6669570cc8Sopenharmony_ci 6769570cc8Sopenharmony_ci安装成功返回0;失败返回错误码 6869570cc8Sopenharmony_ci 6969570cc8Sopenharmony_ci### NativeUnInstallHnp 7069570cc8Sopenharmony_ci 7169570cc8Sopenharmony_ci``` 7269570cc8Sopenharmony_ciint NativeUnInstallHnp(const char *userId, const char *packageName); 7369570cc8Sopenharmony_ci``` 7469570cc8Sopenharmony_ci 7569570cc8Sopenharmony_ci**描述** 7669570cc8Sopenharmony_ci 7769570cc8Sopenharmony_ci 卸载设备中已安装的Native软件。 7869570cc8Sopenharmony_ci 7969570cc8Sopenharmony_ci 参数: 8069570cc8Sopenharmony_ci 8169570cc8Sopenharmony_ci userId:用户ID; 8269570cc8Sopenharmony_ci 8369570cc8Sopenharmony_ci packageName:hap应用软件包名; 8469570cc8Sopenharmony_ci 8569570cc8Sopenharmony_ci**返回:** 8669570cc8Sopenharmony_ci 8769570cc8Sopenharmony_ci卸载成功返回0;失败返回错误码 88