抖音开放平台Logo
开发者文档
控制台
  • 移动应用
  • open SDK 概述
  • open SDK 下载
  • open SDK 接入
  • 抖音分享
  • 安卓分享至私信/群
  • Android&iOS 转发内容到抖音
  • iOS分享至私信/群
  • 抖音投稿发布
  • 抖音名片
  • 抖音登录和授权
  • 常见问题
  • 网站应用
  • Android&iOS 转发内容到抖音

    收藏
    我的收藏
    第三方应用通过接入 SDK, 可以让用户转发视频、图片到抖音。

    背景信息

    转发视频到日常

    转发视频到日常的流程为:三方制作好要分享的内容(图片或视频)之后,调用 SDK 转发到抖音,会先调起视频转发页,最后直接转发视频。
    注意
    抖音 24.8.0 及以上版本支持转发内容到日常。部分功能需要更高版本的抖音支持,具体可查看各功能的最低支持抖音版本。
    警告
    投稿能力(aweme.share)和转发到日常能力(aweme.forward)均需应用申请对应能力的权限。
    登录抖音开放平台控制台,进入目标应用。在应用详情中申请对应能力的权限(Scope)。
    在抖音 30.4.0 以下版本,应用只需申请 aweme.share 权限,即可使用投稿能力和转发到日常能力。
    在抖音 30.4.0 及以上版本,应用需申请 aweme.share 权限以使用投稿能力,申请 aweme.forward 权限以使用转发到日常能力。
    警告
    由于系统API兼容性问题,iOS 18系统的设备暂时无法将视频转发至日常。目前正在进行适配工作,请等待抖音iOS的后续版本。

    操作步骤

    第一步:准备环境

    接入转发功能前请确保 SDK 环境已配置完毕且获取了相关权限。具体操作请参见 iOS 接入安卓接入。

    第二步:设置转发图片和视频(必设)

    注意
    抖音最低支持版本 24.8.0。
    iOS:
    DouyinOpenSDKShareRequest *req = [[DouyinOpenSDKShareRequest alloc] init]; req.publishStory = YES; // 转发到日常 req.useNewShareAbility = YES; // 使用新转发能力 req.shareAction = DouyinOpenSDKShareTypePublishMedia; req.localIdentifiers = identifiers; //NSArray<NSString *> *
    安卓:
    request.mMediaContent = MediaContent().apply { mMediaObject = ImageObject().also { val mImagePaths = ArrayList<String>() mImagePaths.add("xx") //只支持一张图,图片路径,推荐为FileProvider形式 it.mImagePaths = mImagePaths } // mMediaObject = VideoObject().also { // val mVideoPaths = ArrayList<String>() // mVideoPaths.add("xx") //只支持单个视频,视频路径,推荐为FileProvider形式 // it.mVideoPaths = mVideoPaths // } } request.shareToType = 1;

    第三步:转发内容携带 share_id(推荐)

    iOS:
    request.state = @"xxx"
    安卓:
    request.mState = "xxx";
    传入 OpenAPI 中申请 ShareID,分享结果会通过 Webhooks 进行回调。更多信息,请参见查询视频分享结果及数据

    第四步:转发内容携带小程序气泡信息(可跳过)

    注意
    抖音最低支持版本 24.8.0。
    警告
    目前携带的小程序需跟应用为同一主体下才能挂载成功。如果非同主体请使用推广任务。只需要在之前的基础上传入额外的任务信息,目前该能力需要抖音版本大于 26.5.0 版本。小程序推广计划参数详情请点击这里
    更详细的参数设置请查看 iOS 发布Android 发布
    iOS:
    req.extraInfo = @{ @"mpInfo" : @{ // 小程序链接配置 @"title" : @"...", // 小程序title @"identifier" : @"...", // 小程序appid @"desc" : @"...", // 小程序描述 @"startPageURL" : @"...", // 小程序pathAndQuery } }
    安卓:
    val shareParam = ShareParam() request.mMicroAppInfo = MicroAppInfo().apply { appId = "" //小程序appid appTitle = "" //小程序title appUrl = "" // 小程序pathAndQuery description = "" //小程序描述 }

    第五步:转发内容设置贴纸能力(可跳过)

    注意
    抖音最低支持版本 24.8.0。
    iOS:
    // HashTag贴纸 DouyinOpenSDKShareHashtagSticker *hashtagSticker = [[DouyinOpenSDKShareHashtagSticker alloc] init]; hashtagSticker.text = @"hashtag"; [req.hashtagStickers addObject:hashtagSticker]; // @用户贴纸 抖音支持版本25.8.0 DouyinOpenSDKShareMentionSticker *mentionSticker = [[DouyinOpenSDKShareMentionSticker alloc] init]; mentionSticker.openID = @"xxx"; [req.mentionStickers addObject:mentionSticker]; // 地理位置贴纸 DouyinOpenSDKSharePoiSticker *poiSticker = [[DouyinOpenSDKSharePoiSticker alloc] init]; poiSticker.poiID = @"xxx"; req.poiStickers = poiSticker;
    安卓:
    //贴纸 安卓SDK升级中,暂不支持地理位置贴纸 val stickersObject = StickersObject() stickersObject.addSticker(HashtagSticker().apply { name = "hashtagSticker" }) stickersObject.addSticker(MentionSticker().apply { openId = "openId" }) shareParam.stickersObject = stickersObject

    第六步:转发内容设置背景图(可跳过)

    注意
    抖音最低支持版本 24.8.0。
    背景参数优先级为色值 > 内容渐变色(默认)。
    注:内容渐变色指根据转发内容自动设置背景颜色。
    iOS:
    DouyinOpenSDKShareRequest *shareReq = [DouyinOpenSDKShareRequest new]; // ...... shareReq.backgroundModel = [DouyinOpenSDKShareBackground new]; shareReq.backgroundModel.topColor = @"#000000"; // 顶部颜色 shareReq.backgroundModel.bottomColor = @"#FFFFFF"; // 底部颜色
    安卓:
    val shareParam = ShareParam() shareParam.shareDailyBGBaseColor = Color.RED // 背景基准色 shareParam.shareDailyBGComplementaryColor = Color.WHITE //背景渐变色

    第七步:进行转发

    iOS:
    [req sendShareRequestWithCompleteBlock:^(DouyinOpenSDKShareResponse * _Nonnull Response) { //... }];
    安卓:
    val douyinOpenApi = DouYinOpenApiFactory.create(activity) douyinOpenApi.share(request)
    错误码与错误信息可参考 iOS 发布Android 发布