抖音开放平台Logo
开发者文档
控制台

tt.shareAppMessage
收藏
我的收藏

基础库 1.0.0 开始支持本方法,这是一个异步方法。

主动调用转发相关方法(拉起发布器、好友邀请、录屏分享等)

前提条件
业务背景
使用限制
注意事项
  • 参数 options 是一个 ShareParam 对象
  • 生成的分享链接有效期为 45 天,过期后链接失效
  • 报错返回 'get shareInfo return null' 时为获取分享信息失败,可能为获取分享信息时网络请求超时,或者是当前 appID 的分享状态异常,比如被封禁导致,可以检查站内信或通过运营群进行反馈(接入指南 -联系我们
相关教程

语法

tt.shareAppMessage(options)

参数说明

options 为 object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
titlestring

转发标题,不传则默认使用后台配置或当前小游戏的名称

1.0.0
descstring

分享文案,不传则默认使用后台配置内容或游戏简介

1.0.0
extraobject

附加信息(仅 channel == video | picture 时生效)

1.0.0
channelstring

转发内容类型

1.0.0
querystring

查询字符串,必须是 key1=val1&key2=val2 的格式。从这条转发消息进入后,可通过 tt.getLaunchOptionsSynctt.onShow 获取启动参数中的 query 用来实现信息透传

1.0.0
templateIdstring

分享素材模板 id,指定通过平台审核的 templateId 来选择分享内容,需在平台设置且通过审核。参考拍摄视频并发布至抖音

1.0.0
imageUrlstring

转发显示图片的链接,支持本地沙盒目录(ttfile://)或 相对代码包根目录的图片路径,不支持网络图片路径。

显示图片长宽比推荐 5:4,不传或使用网络图片路径则默认使用小游戏 icon

当 channel = video | picture 时,该字段不生效

1.0.0
successfunction
接口调用成功的回调函数
1.0.0
failfunction
接口调用失败的回调函数
1.0.0
completefunction
接口调用结束的回调函数(调用成功、失败都会执行)
1.0.0

channel 参数说明

说明

支持环境

-

默认分享方式, channel 为空字符串或者不传

通用

invite

拉起邀请面板分享游戏给好友

仅抖音 20.6 及以上版本

video

发布视频内容

通用

token

口令分享,生成一串特定的字符串文本

仅头条

article

发布图文内容

仅头条

picture

发布图文内容,内容由接口参数直接传入

仅抖音、抖音极速版、抖音火山版 25.9 及以上版本

extra 类型说明

object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
videoTagstring

channel = video 时可以设置。分享视频的标签,可以结合获取抖音视频排行榜使用

1.0.0
withVideoIdboolean

channel = video 时可以设置。是否支持跳转到播放页,以及支持获取视频信息等接口 (为 true 时会在 success 回调中带上 videoId)

1.0.0
videoPathstring

channel = video 时可以设置。视频地址 ,分享一个本地视频。如果 videoPath 不传入会拉起摄像头拍摄界面

1.0.0
videoTopicsArray<string>

channel = video 时可以设置。视频话题(仅抖音支持) ,目前由 hashtag_list 代替

即将废弃,为保证兼容性,建议同时设置hashtag_list

1.0.0
hashtag_listArray<string>

channel = video | picture 时可以设置。视频话题,字符串中间包含空格会取第一个空格前内容作为话题(仅抖音支持)

1.0.0
defaultBgmstring

channel = video 时可以设置。抖音 pgc 音乐的短链(仅抖音支持,需要基础库版本大于 1.90) 。形如https://v.douyin.com/JmcxWo8/ 参考 抖音小游戏录屏带配乐能力

1.90.0
cutTemplateIdstring

channel = video 时可以设置。抖音上可用的剪映模板 ID, 参考 录屏添加剪映视频模板能力

1.0.0
picturePathArray<string>

channel = picture时,本参数必传。发布的图片地址,仅支持本地图片路径(即游戏包内路径和ttfile://路径)

1.0.0
contentTitlestring

channel = picture 时可以设置。作品标题

1.0.0
contentDescriptionstring

channel = picture 时可以设置。作品描述信息

1.0.0
createChallengebooleanfalse

channel = video 时可以设置。是否分享为挑战视频 ( 仅头条支持 )

1.0.0
video_titlestring""

channel = video 时可以设置。生成输入的默认文案

1.0.0
abortWhenCutTemplateUnavailablebooleanfalse

channel = video 时可以设置。剪映模板不可用或者剪映模板 ID 无效的时候是否直接回调失败

1.0.0

回调成功

object 类型,属性如下:

属性名类型说明最低支持版本
dataarray

仅当入参 options 中 channel='invite' 时返回,包含邀请对象的用户名和用户头像。(当邀请多个好友或群聊时,目前仅会返回一个好友的信息,群聊的信息暂不支持返回)

2.54.0

data 类型说明

object 类型,属性如下:

属性名类型说明最低支持版本
namestring

分享对象的用户名

2.54.0
iconstring

分享对象的用户头像

2.54.0

回调失败

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring

"shareAppMessage:fail" + 错误信息

1.0.0

错误码

errorCodeerrMsgerrorType说明最低支持版本
115901permission denied,channel: %sD
1.0.0
999979can not be shared without clicking by userD
1.0.0
115902file not exist path:%sD
1.0.0
115903file not readable path:%sD
1.0.0
115904video file is too short path:%sD
1.0.0
999990auth denyU
1.0.0
999990no permission to share video from record screenU
1.0.0
115908stickerId and cutTemplateId are mutually exclusiveD
1.0.0
115909stickerId unavailable %sD
1.0.0
115910cutTemplateId unavailable %sD
1.0.0
115906use cut template failD
1.0.0
115907share permission deniedD
1.0.0
999981share image feature not supportD
1.0.0
999993onBusinessError unknown biz errorF
小游戏框架内部错误,有需要请创建工单咨询
1.0.0
999993internal errorF
小游戏框架内部错误,有需要请创建工单咨询
1.0.0
999999invalid paramD
参数错误
1.0.0
999991Invalid CommonInfo.F
小游戏框架内部错误,有需要请创建工单咨询
1.0.0
999999feature is not supported in appD
1.0.0
999987feature is not supported in appD
1.0.0
999987share image feature not supportD
1.0.0
115905Internal error: show board error / Share errorF
小游戏框架内部错误,有需要请创建工单咨询
1.0.0
115900**F
小游戏框架内部错误,有需要请创建工单咨询
1.0.0
999995cancelU
1.0.0
999995cancelU
1.0.0
115912not support channel:videoD
1.0.0
115911not support channel:pictureD
1.0.0
115914should not pass in useTmeaInvitationStyle and shareImagePath togetherD
1.0.0
115913TaskGameId Not FoundD
1.0.0
999985network unavailableU
1.0.0

代码示例

【示例一】使用审核通过的分享素材

tt.shareAppMessage({ templateId: "", // 替换成通过审核的分享ID query: "", success() { console.log("分享成功"); }, fail(e) { console.log("分享失败"); }, });

示例二】代码指定分享内容(图片、标题、描述)

tt.shareAppMessage({ title: "测试分享", desc: "测试描述", imageUrl: "", query: "", success() { console.log("分享成功"); }, fail(e) { console.log("分享失败"); }, });

【示例三】同时使用模板 templateId 和 分享内容

tt.shareAppMessage({ templateId: "", // 替换成通过审核的分享ID title: "测试分享", desc: "测试描述", imageUrl: "", query: "", success() { console.log("分享视频成功"); }, fail(e) { console.log("分享视频失败"); }, });

【示例四】邀请好友

tt.shareAppMessage({ channel: "invite", // 拉起邀请面板分享游戏好友 title: "测试分享", desc: "测试描述", imageUrl: "", query: "", success(res) { console.log("分享成功" + JSON.stringify(res)); }, fail(e) { console.log("分享失败"); }, });

【示例五】口令分享

tt.shareAppMessage({ channel: "token", title: "测试分享口令", desc: "测试描述", templateId: "", // 替换成通过审核的分享ID query: "", success() { console.log("分享成功"); }, fail(e) { console.log("分享失败"); }, });

视频分享

参考 视频拍摄器