更新记录
1.0(2025-06-21) 下载此版本
主要开发uniapp集成部署抖音SDK
平台兼容性
uni-app(4.66)
Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
---|---|---|---|---|---|---|---|---|
- | - | - | - | - | - | - | - | - |
微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
---|---|---|---|---|---|---|---|---|---|---|
- | - | - | - | - | - | - | - | - | - | - |
uni-app x(4.66)
Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
---|---|---|---|---|---|
- | - | - | - | - | - |
千懿抖音开放平台SDK使用说明
插件简介
千懿抖音开放平台SDK是一款专为HBuilderX开发者打造的插件,提供抖音开放平台接入能力,简化开发流程,助力开发者轻松实现抖音授权登录、抖音直播、视频管理等功能。本插件基于抖音开放平台API,提供完整的接口封装,让开发者无需深入了解抖音开放平台的复杂接口即可快速集成抖音能力。
功能特点
- 抖音授权登录:一键接入抖音账号体系,获取用户基本信息
- 直播能力集成:支持抖音直播推流、直播状态管理、直播数据统计
- 视频管理:支持视频上传、发布、查询等功能
- 云函数支持:提供云端接口调用能力,安全管理密钥
- 数据持久化:自动管理授权令牌、用户信息等数据
- 示例页面:提供完整的使用示例,快速上手
安装步骤
方式一:插件市场安装(推荐)
- 打开HBuilderX,点击顶部菜单【插件】-【插件市场】
- 搜索"千懿抖音开放平台SDK"
- 点击"安装"按钮
方式二:本地导入安装
- 下载SDK压缩包
- 解压到项目根目录
- 在项目的
manifest.json
文件中添加相关配置
配置指南
1. 抖音开放平台配置
首先,您需要在抖音开放平台创建应用并获取以下信息:
- ClientKey
- ClientSecret
- WebcastAppId (直播功能需要)
2. 项目配置
在项目的manifest.json
文件中添加如下配置:
{
"app-plus": {
"distribute": {
"android": {
"sdk": {
"douyin": {
"clientKey": "您的ClientKey",
"webcastAppId": "您的WebcastAppId",
"hostAppId": "您的WebcastAppId"
}
}
}
}
},
"mp-toutiao": {
"appid": "您的ClientKey"
}
}
3. 云函数配置
在uniCloud云函数目录创建配置文件:
// uniCloud/database/douyin_config.json
{
"clientKey": "您的ClientKey",
"clientSecret": "您的ClientSecret",
"redirectUri": "您的回调地址"
}
使用方法
1. 抖音授权登录
// 引入SDK
import DouyinSDK from '@/utils/douyinSDK.js';
// 初始化SDK
const douyinSDK = new DouyinSDK();
// 发起抖音授权
douyinSDK.authorize()
.then(result => {
console.log('授权成功', result);
// 获取用户信息
return douyinSDK.getUserInfo();
})
.then(userInfo => {
console.log('用户信息', userInfo);
})
.catch(err => {
console.error('授权失败', err);
});
2. 直播功能使用
// 获取直播推流地址
douyinSDK.getStreamKey()
.then(streamInfo => {
console.log('推流地址', streamInfo.rtmpUrl);
console.log('推流密钥', streamInfo.streamKey);
// 开始直播
return douyinSDK.startLive({
title: '测试直播',
coverUrl: '封面图URL'
});
})
.then(liveInfo => {
console.log('直播已开始', liveInfo);
})
.catch(err => {
console.error('直播失败', err);
});
3. 视频管理
// 上传视频
douyinSDK.uploadVideo({
filePath: '/storage/emulated/0/DCIM/test.mp4',
title: '测试视频',
description: '这是一个测试视频'
})
.then(result => {
console.log('视频上传成功', result);
})
.catch(err => {
console.error('视频上传失败', err);
});
云函数API说明
1. douyin-auth
处理抖音授权流程,获取授权码和访问令牌。
请求参数:
code
: 授权码(可选,首次授权不需要)refreshToken
: 刷新令牌(可选,用于刷新访问令牌)
响应数据:
accessToken
: 访问令牌refreshToken
: 刷新令牌expiresIn
: 有效期(秒)openId
: 用户唯一标识
2. douyinToken
管理抖音访问令牌,包括存储、更新和验证令牌。
请求参数:
action
: 操作类型(get/refresh/validate)userId
: 用户ID
响应数据:
accessToken
: 访问令牌valid
: 令牌是否有效expiresAt
: 令牌过期时间
3. get-stream-key
获取直播推流地址和密钥。
请求参数:
userId
: 用户ID
响应数据:
rtmpUrl
: 推流地址streamKey
: 推流密钥expiresAt
: 过期时间
数据库表说明
1. users表
存储用户信息和授权数据。
主要字段:
_id
: 用户IDopenId
: 抖音用户唯一标识accessToken
: 访问令牌refreshToken
: 刷新令牌tokenExpiresAt
: 令牌过期时间nickname
: 用户昵称avatar
: 用户头像
2. live_streams表
存储直播信息记录。
主要字段:
_id
: 直播IDuserId
: 用户IDstreamId
: 抖音直播IDtitle
: 直播标题coverUrl
: 封面图URLrtmpUrl
: 推流地址streamKey
: 推流密钥status
: 直播状态startTime
: 开始时间endTime
: 结束时间viewCount
: 观看人数
示例页面说明
插件包含以下示例页面,展示SDK各功能的使用方法:
- 登录页面:展示抖音授权登录流程
- 直播设置页面:展示如何配置并开始直播
- 直播页面:展示直播推流界面
- RTMP设置页面:展示如何配置RTMP服务器
注意事项
- 本插件需要在真机环境下测试,模拟器可能无法正常工作
- 首次使用请确保已在抖音开放平台完成开发者认证
- 请妥善保管您的ClientSecret,避免泄露
- 授权回调地址需要与抖音开放平台配置一致
- 直播功能需要单独申请开通直播权限
常见问题解答
Q: 授权失败怎么办?
A: 请检查ClientKey是否正确配置,并确保已在抖音开放平台正确设置回调地址。
Q: 获取不到推流地址?
A: 请确认已开通抖音直播权限,并检查WebcastAppId配置是否正确。
Q: 令牌过期如何处理?
A: SDK会自动处理令牌刷新,无需手动干预。如遇问题,可调用refreshToken
方法手动刷新。
Q: 如何查看直播数据统计?
A: 可通过douyinSDK.getLiveStats(liveId)
方法获取直播统计数据。
技术支持
如有使用问题,请通过以下方式联系我们:
- 邮箱:support@qianyi.com
- QQ群:123456789
- 官方网站:https://www.qianyi-zhibo.com