抖音开放平台Logo
开发者文档
“/”唤起搜索
控制台
  • JS API 列表
  • 基础
  • TTML
  • 网络
  • 媒体
  • 地图
  • 文件
  • 数据缓存
  • 地理位置
  • 设备
  • 画布
  • 界面
  • 页面导航
  • 开放接口
  • 登录
  • 用户信息
  • 广告
  • 营销能力
  • 支付
  • 分享
  • 小程序跳转
  • 抖音视频能力
  • 收货地址
  • 设置
  • 授权
  • 评价能力
  • 数据分析
  • 视频拍摄器
  • 引导关注
  • 订阅消息
  • 电商插件能力(即将废弃)
  • 流量来源识别
  • 隐私信息授权
  • web化
  • 转发和挂载
  • 侧边栏能力
  • tt.getSidebarActivity
  • tt.navigateToScene
  • tt.updateSidebarActivity
  • tt.createSceneActivityContext
  • SceneActivityContext
  • 直播能力
  • AI/AR能力
  • 安全能力
  • 行业开放
  • 第三方平台
  • 其它
  • 生活服务(即将废弃)
  • tt.createSceneActivityContext

    收藏
    我的收藏

    基础库 3.27.0 开始支持本方法,低版本需做兼容处理,这是一个同步方法。

    调用该 API 可以获取调用复访营销活动 SceneActivityContext 实例对象,接入详见侧边栏复访营销

    前提条件

    请确认已通过开发者平台控制台中或通过 OpenAPI 创建小程序券模板和小程序营销活动,接入方式详见:侧边栏复访营销

    业务背景
    使用限制

    暂不支持抖音开发者工具调试,真机调试请参考小程序线上调试彩蛋

    注意事项
    • 该能力需要开发者前置在控制台或通过 openapi 创建复访营销活动并且复访营销活动的引流方式需要为小程序内组件调用,弹窗样式需要选择自定义样式,才可进行调用,具体申请流程可参考>>小程序券创建流程小程序营销活动创建流程
    • 在小程序基础库版本 >= 3.32.0 (兼容处理),SceneActivityContext.on 支持回调开发者所有类型复访 “福利” 领取事件 以及 “去使用”点击事件
    支持沙盒
    相关教程

    语法

    tt.createSceneActivityContext()

    参数说明

    返回值

    类型说明最低支持版本
    object

    复访营销活动 SceneActivityContext 对象

    3.27.0

    扫码体验

    请使用字节宿主APP扫码

    代码示例

    开发者工具中预览

    <view class="container"> <view class="body-space"> <view tt:if="{{canShowRelation}}" class="page-section"> <view class="title">请在非侧边栏场景下调用</view> <button class="button-group" type="primary" bindtap="bind">关联侧边栏复访福利</button> <button tt:if="{{relationResult}}" type="primary" bindtap="jump">跳转</button> </view> <view tt:if="{{canShowReceive}}" class="page-section"> <view class="tips">请在侧边栏场景下调用</view> <view class="page-section-title">领取侧边栏福利</view> <button type="primary" bindtap="receive">领取</button> <view class="page-body-text">查看领取结果:{{receiveResult}}</view> </view> </view> </view>
    Page({ activityContext: undefined, data: { canShowRelation: false, canShowReceive: false, relationResult: '', receiveResult: '', }, onLoad() { this.activityContext = tt.createSceneActivityContext(); }, onShow() { this.setData({ canShowRelation: this.activityContext.checkScene({ scene: 'bind', }), canShowReceive: this.activityContext.checkScene({ scene: 'receive', }), }); }, bind() { const canRelation = this.activityContext.checkScene({ scene: 'bind', }); if (!canRelation) { tt.showToast({ title: '请在非侧边栏场景下使用', }); return; } this.activityContext.bind({ activityId: '', success: (res) => { if (res.mainTitle) { console.log('关联侧边栏福利成功', res); tt.showToast({ title: '关联侧边栏福利成功', }); this.setData({ relationResult: JSON.stringify(res), }); } }, fail: (err) => { console.log('关联侧边栏福利失败', err); tt.showToast({ title: '关联侧边栏福利失败', icon: 'none', }); }, }); }, jump() { this.activityContext.jump({ fail(e) { console.log('跳转失败', e); }, }); }, receive() { const canReceive = this.activityContext.checkScene({ scene: 'receive', }); if (!canReceive) { tt.showToast({ title: '请在侧边栏场景下使用', }); return; } this.activityContext.receive({ success: (res) => { console.log('领取侧边栏福利成功', res); tt.showToast({ title: '领取侧边栏福利成功', }); this.setData({ receiveResult: JSON.stringify(res), }); }, fail: (err) => { console.log('领取侧边栏福利失败', err); tt.showToast({ title: '领取侧边栏福利失败', icon: 'none', }); this.setData({ receiveResult: JSON.stringify(err), }); }, }); }, });