KEY | VALUE | 备注 |
---|---|---|
SDK 版本号 | 1.0.4 | |
小红书最低版本号要求 | 8.20.0 | |
manifest 中声明的权限 | ohos.permission.INTERNET | 此权限已经在 sdk 的 manifest 清单文件中声明,接入方无需再次声明 |
请通过首页「快速接入」入口登记企业和应用信息,通过平台审核后,将获得对应AppKey信息;
下载鸿蒙开发的 IDE
前往鸿蒙官网下载 DevEco Studio NEXT
配置 sdk 依赖
修改项目中的oh-package.json5文件,在dependencies中加入小红书 opensdk 的依赖项
{
"name": "demo",
"version": "1.0.0",
"description": "Please describe the basic information.",
"main": "",
"author": "",
"license": "",
"dependencies": {
"@xiaohongshu/open_sdk": "1.0.4"
}
}
备注:以下示例代码均为 ArkTS 代码。
进行分享之前,需要先对 sdk 初始化。
/**
* 初始化 SDK
*/
const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext
XhsShareSdk.registerApp(context, appkey)
参数解析
/**
* 注册 app (即初始化)
* @param context context
* @param appKey 申请的appKey
*/
registerApp(context: common.UIAbilityContext, appKey: string)
笔记类型 | 标题 | 正文 | 图片 | 视频 | 视频封面 |
---|---|---|---|---|---|
图文笔记 | 可选 | 可选 | 必传,1-18 张 | - | - |
视频笔记 | 可选 | 可选 | - | 必传,1 个视频 | 可选,0 - 1 张封面 |
XhsShareSdk.shareNote(context, {
title: '这是标题',
content: '这是内容',
type: 'note',
imageInfo: [{
'url': '网络图片url',
}]
})
XhsShareSdk.shareNote(context, {
title: '这是标题',
content: '这是内容',
type: 'video',
videoInfo: {
'video': {
'url': '网络视频url'
},
'cover': {
'url': '网络图片url',
}
}
})
NOTE:
XhsImageItem
支持一种构造方式
url
// 网络图片XhsVideoItem
支持一种构造方式
url
// 网络视频设置分享回调
XhsShareSdk.setShareCallback({
onSuccess: (sessionId: string) => {},
onError: (sessionId: string, errorCode: number, errorMessage: string) => {}
})
获取小红书包名
/**
* 获取小红书包名
*
* @return 小红书包名
*/
XhsShareSdk.getXhsPackageName()
判断小红书是否安装
/**
* 小红书是否已经安装
*
* @return 是否已经安装
*/
XhsShareSdk.isXhsInstalled()
以下是分享回调中的错误码定义。
错误码 | 错误码含义 |
---|---|
-10000000 | 未知错误,兜底使用 |
-10100001 | 小红书未安装 |
-10100002 | 前置检查失败,资源缺失(图片和视频都没有) |
-10100003 | 生成跨应用 uri 失败 |
-10100004 | 重复调用分享,上一次分享流程还未结束 |
-10100005 | 鉴权失败 |
-10100006 | 分享时还没有注册过 |
-10100007 | 分享上下文为空 |
-10100008 | JSON 处理错误 |
-10100009 | 无法打开小红书 |
-10100010 | 小红书版本号太低 |