敬告:此 DEMO 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,了解更多。
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版 jsBridge-v20241118.zip,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
clientKey:
jsBridge.dy.initSdk({ // clientKey: "{{initSdk.clientKey}}" }, function(success, res) { alert(success ? "成功" : JSON.stringify(res)); });
jsBridge.dy.isAppInstalled(function(installed) { alert(installed ? "已安装" : "未安装"); });
scope:
state:
//1.申请上线之前的测试需在移动应用 设置 -> 白名单管理 页面添加测试用的白名单抖音号。 //2.首次授权登录测试号需增加 trial.whitelist 加入白名单权限范围 //3.取得 res.authCode 后需调用抖音服务器端接口才能绑定白名单 jsBridge.dy.authorize({ //必须,权限范围,多个用逗号分割 //在抖音移动应用 能力管理 -> 用户权限 页面查看或申请,已默认获得授权登录能力 user_info scope: "{{authorize.scope}}", //可选,状态码,回调时原样返回 state: "{{authorize.state}}" }, function(success, res) { if (success) { //用授权码调用抖音服务器端接口获取 access_token 及 open_id、用户信息 jsBridge.setClipboardText(res.authCode); alert("已复制 " + res.authCode); } else { alert("失败\n" + JSON.stringify(res)); } }); /* 成功时回调 res 参数结构 { authCode: 授权码,调用抖音服务器端接口获取 access_token 及 open_id、用户信息 state : 原样返回的状态码 grantedPermissions: 用户已同意的授权范围 errorCode: 错误码 errorMsg : 错误说明 } */
// 需申请开通:能力管理 -> 视频权限 -> 发布内容至抖音(aweme.share)权限 // images、videos、mix 参数必传且仅可传其一 // iOS 以相册作为中转站,需要相册的完全访问权限 jsBridge.dy.share({ //可选,标题 title: "美好的一天", //可选,图片链接组 images: [ "https://www.example.com/image1.jpg", "https://www.example.com/image2.jpg", "https://www.example.com/image3.jpg", //... ], //可选,视频链接组 videos: [ "https://www.example.com/video1.mp4", "https://www.example.com/video2.mp4", "https://www.example.com/video3.mp4", //... ], //可选,图片、视频混合链接组,仅支持 Android mix: [ { image: "https://www.example.com/image1.jpg" }, { image: "https://www.example.com/image2.jpg" }, { video: "https://www.example.com/video1.mp4" }, //... ], //可选,抖音小程序信息,会在分享的内容左下角带小程序入口 miniProgram: { //必须,抖音小程序ID appId: "aabb1122", //必须,名称 title: "hello world", //必须,摘要 desc : "你好世界", //可选,小程序页面地址 appUrl: "pages/movie/index?id=123" }, //可选,话题 hashtags: [ "话题1", "话题2", //... ], //可选,分享到哪里,默认 publish //edit 编辑页 //publish 发布页 shareTo: "publish" //可选,任意字符,分享成功时原样返回,可为 share_id 以便查询发布结果 state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } }); /* 成功时回调 res 参数结构 { state : 原样返回的状态码 errorCode: 错误码 errorMsg : 错误说明 } */
shareTo:
jsBridge.dy.share({ title: "美好的一天", images: [ "http://i.yimenyun.net/sys/1.jpg", "http://i.yimenyun.net/sys/2.jpg", "http://i.yimenyun.net/sys/3.jpg" ], hashtags: [ "话题1", "话题2" ], shareTo: "{{shareImages.shareTo}}", state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } });
shareTo:
jsBridge.dy.share({ title: "美好的一天", videos: [ "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4" ], hashtags: [ "话题1", "话题2" ], shareTo: "{{shareVideos.shareTo}}", state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } });
shareTo:
jsBridge.dy.share({ title: "美好的一天", mix: [ { image: "https://www.example.com/image1.jpg" }, { image: "https://www.example.com/image2.jpg" }, { video: "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4" } ], hashtags: [ "话题1", "话题2" ], shareTo: "{{shareMix.shareTo}}", state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } });
// image、webPage 参数必传且仅可传其一 jsBridge.dy.shareToContacts({ //可选,图片 //iOS 以相册作为中转站,需要相册的完全访问权限 image: "http://i.yimenyun.net/sys/1.jpg", //可选,网页 webPage: { //必须,网址 //需在抖音平台进入应用: //能力管理 -> 视频权限 -> 分享给抖音好友/群 增加分享链接 提交审核你的链接域名 link: "https://www.example.com", //必须,标题 title: "hello world", //必须,摘要 desc : "你好世界", //可选,缩略图,默认为抖音平台上所申请应用的图标 imgUrl: "http://i.yimenyun.net/sys/2.jpg" }, //可选,状态,分享成功时回调中原样返回 state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } }); /* 成功时回调 res 参数结构 { state : 原样返回的状态码 errorCode: 错误码 errorMsg : 错误说明 } */
jsBridge.dy.shareToContacts({ image: "http://i.yimenyun.net/sys/1.jpg", state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } });
jsBridge.dy.shareToContacts({ webPage: { //必须,网址 //需在抖音平台进入应用: //能力管理 -> 视频权限 -> 分享给抖音好友/群 增加分享链接 提交审核你的链接域名 link: "https://www.example.com", //必须,标题 title: "hello world", //必须,摘要 desc : "你好世界", //可选,缩略图,默认为抖音平台上所申请应用的图标 imgUrl: "http://i.yimenyun.net/sys/2.jpg" }, state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } });
jsBridge.dy.openRecordPage({ //可选 shareTitle: "分享标题", //可选,抖音小程序信息,会在分享的内容左下角带小程序入口 miniProgram: { //必须,抖音小程序ID,未填则忽略小程序信息 appId: "", //必须,名称 title: "hello world", //必须,摘要 desc : "你好世界", //可选,小程序页面地址 appUrl: "pages/movie/index?id=123" }, //可选,话题 hashtags: [ "话题1", "话题2", //... ], //可选,任意字符,分享成功时原样返回,可为 share_id 以便查询获取用户发布的内容 state: "" }, function(success, res) { if (success) { alert("成功"); } else { alert("失败\n" + JSON.stringify(res)); } }); /* 成功时回调 res 参数结构 { state : 原样返回的状态码 errorCode: 错误码 errorMsg : 错误说明 } */