准备工作
1. 您需要一个鸿蒙应用,这个应用可以是您现有的工程,也可以是您新建的一个空的工程。
2. 请确保您的鸿蒙应用版本为 5.0 或更高版本。
操作步骤
步骤1:添加 HAR 依赖
1. 从 cnb 根目录下 ohos 目录下载 smh-ui-kit.har,放到项目中:
your-ohos-project/├── entry/│ ├── libs/│ │ └── smh-ui-kit.har│ └── src/└── oh-package.json5
2. 在
entry/oh-package.json5 中添加依赖:{"dependencies": {"smh-ui-kit": "file:./libs/smh-ui-kit.har"}}
步骤2:初始化 SDK
在
UIAbility 的 onWindowStageCreate() 中调用:import UIAbility from '@ohos.app.ability.UIAbility';import window from '@ohos.window';import Want from '@ohos.app.ability.Want';import AbilityConstant from '@ohos.app.ability.AbilityConstant';import { SmhUiKit } from 'smh-ui-kit';export default class EntryAbility extends UIAbility {onWindowStageCreate(windowStage: window.WindowStage): void {SmhUiKit.init();windowStage.loadContent('pages/Index');}}
步骤3:打开文件管理页面
参考如下代码即可打开文件管理页面。
import { AccessToken, SmhAccessTokenProvider, SmhUiKit } from 'smh-ui-kit';const smhConfig = {host: 'https://xxx.api.tencentsmh.cn',libraryId: 'your-library-id',spaceId: 'your-space-id'};class MyTokenProvider implements SmhAccessTokenProvider {getAccessToken(): AccessToken {const result = YourApi.getSmhTokenSync();return {token: result.token,startTime: Date.now(),expiresIn: result.expiresIn};}}SmhUiKit.openPage(smhConfig, new MyTokenProvider());
SmhConfig 参数
参数 | 说明 | 类型 | 是否必填 |
host | SMH API 地址,如 https://xxx.api.tencentsmh.cn | String | 是 |
libraryId | 媒体库 ID | String | 是 |
spaceId | 空间 ID | String | 是 |
path | 初始 space 目录路径,默认根目录 | String | 否 |
userId | 用户 ID(SMH 服务端概念) | String | 否 |
AccessToken 参数
参数 | 说明 | 类型 | 是否必填 |
token | 访问凭证 | String | 是 |
startTime | Token 起始时间(毫秒时间戳) | number | 是 |
expiresIn | 有效时长(秒) | number | 是 |
说明:
startTime 和 expiresIn 用于描述 Token 有效期。SDK 内部会优先复用未过期 Token,接入方无需额外管理 Token 生命周期。