tt.shareAppMessage收藏我的收藏
基础库 1.0.0 开始支持本方法,这是一个异步方法。
前提条件 | 无 |
业务背景 | 无 |
使用限制 | 无 |
注意事项 |
|
相关教程 |
语法
tt.shareAppMessage(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
title | string | 否 | 转发标题,不传则默认使用后台配置或当前小游戏的名称 | 1.0.0 | |
desc | string | 否 | 分享文案,不传则默认使用后台配置内容或游戏简介 | 1.0.0 | |
extra | object | 否 | 附加信息(仅 channel == video | picture 时生效) | 1.0.0 | |
channel | string | 否 | 转发内容类型 | 1.0.0 | |
query | string | 否 | 查询字符串,必须 是 key1=val1&key2=val2 的格式。从这条转发消息进入后,可通过 tt.getLaunchOptionsSync 或 tt.onShow 获取启动参数中的 query 用来实现信息透传 | 1.0.0 | |
templateId | string | 否 | 分享素材模板 id,指定通过平台审核的 templateId 来选择分享内容,需在平台设置且通过审核。参考拍摄视频并发布至抖音 | 1.0.0 | |
imageUrl | string | 否 | 转发显示图片的链接,支持本地沙盒目录(ttfile://)或 相对代码包根目录的图片路径,不支持网络图片路径。 显示图片长宽比推荐 5:4,不传或使用网络图片路径则默认使用小游戏 icon 当 channel = video | picture 时,该字段不生效 | 1.0.0 | |
success | function | 否 | 接口调用成功的回调函数 | 1.0.0 | |
fail | function | 否 | 接口调用失败的回调函数 | 1.0.0 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | 1.0.0 |
channel 参数说明
值 | 说明 | 支持环境 |
- | 默认分享方式, channel 为空字符串或者不传 | 通用 |
invite | 拉起邀请面板分享游戏给好友 | 仅抖音 20.6 及以上版本 |
video | 发布视频内容 | 通用 |
token | 口令分享,生成一串特定的字符串文本 | 仅头条 |
article | 发布图文内容 | 仅头条 |
picture | 发布图文内容,内容由接口参数直接传入 | 仅抖音、抖音极速版、抖音火山版 25.9 及以上版本 |
extra 类型说明
object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
videoTag | string | 否 | channel = video 时可以设置。分享视频的标签,可以结合获取抖音视频排行榜使用 | 1.0.0 | |
withVideoId | boolean | 否 | channel = video 时可以设置。是否支持跳转到播放页,以及支持获取视频信息等接口 (为 true 时会在 success 回调中带上 videoId) | 1.0.0 | |
videoPath | string | 否 | channel = video 时可以设置。视频地址 ,分享一个本地视频。如果 videoPath 不传入会拉起摄像头拍摄界面 | 1.0.0 | |
videoTopics | Array<string> | 否 | channel = video 时可以设置。视频话题(仅抖音支持) ,目前由 hashtag_list 代替 即将废弃,为保证兼容性,建议同时设置hashtag_list | 1.0.0 | |
hashtag_list | Array<string> | 否 | channel = video | picture 时可以设置。视频话题,字符串中间包含空格会取第一个空格前内容作为话题(仅抖音支持) | 1.0.0 | |
defaultBgm | string | 否 | channel = video 时可以设置。抖音 pgc 音乐的短链(仅抖音支持,需要基础库版本大于 1.90) 。形如https://v.douyin.com/JmcxWo8/, 参考 抖音小游戏录屏带配乐能力 | 1.90.0 | |
cutTemplateId | string | 否 | channel = video 时可以设置。抖音上可用的剪映模板 ID, 参考 录屏添加剪映视频模板能力 | 1.0.0 | |
picturePath | Array<string> | 否 | channel = picture时,本参数必传。发布的图片地址,仅支持本地图片路径(即游戏包内路径和ttfile://路径) | 1.0.0 | |
contentTitle | string | 否 | channel = picture 时可以设置。作品标题 | 1.0.0 | |
contentDescription | string | 否 | channel = picture 时可以设置。作品描述信息 | 1.0.0 | |
createChallenge | boolean | false | 是 | channel = video 时可以设置。是否分享为挑战视频 ( 仅头条支持 ) | 1.0.0 |
video_title | string | "" | 是 | channel = video 时可以设置。生成输入的默认文案 | 1.0.0 |
abortWhenCutTemplateUnavailable | boolean | false | 是 | channel = video 时可以设置。剪映模板不可用或者剪映模板 ID 无效的时候是否直接回调失败 | 1.0.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
data | array | 仅当入参 options 中 channel='invite' 时返回,包含邀请对象的用户名和用户头像。(当邀请多个好友或群聊时,目前仅会返回一个好友的信息,群聊的信息暂不支持返回) | 2.54.0 |
data 类型说明
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
name | string | 分享对象的用户名 | 2.54.0 |
icon | string | 分享对象的用户头像 | 2.54.0 |
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "shareAppMessage:fail" + 错误信息 | 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("分享失败"); }, });