ShareSDK抖音

本篇文档主要讲解如何使用抖音平台并进行分享和授权。

创建应用

  1. 登录抖音开放平台控制台并通过企业认证。
  2. 选择我的应用 > 移动应用
  3. 单击创建移动应用
  4. 编辑应用信息。

以下为创建过程示例,图中信息仅为示例,创建时请按照真实信息填写,否则无法正常使用。

image-20240711142533745

image.png

image.png

image-20240711142121934

image-20240711143750191

完成以上内容填写后,抖音平台应用创建已经完成,可正常使用。

权限申请

分享至私信/群

该能力需使用分享给抖音好友/群权限,该权限默认开启。

如果您想要分享 HTML 链接到抖音联系人,请先到该权限中添加分享链接才可以成功分享。

image-20240712152405277

image-20240711174409176

image-20240711174459242

此时,则可在分享 HTML 链接的时候使用 https://mob.com

集成使用

配置信息获取

客户端在使用抖音平台之前,需要先获取抖音为应用分发的Client Key和Client Secret。

image-20240711150009230

Android

SDK集成

在集成抖音相关能力之前,请先按照ShareSDK集成指南完成ShareSDK的集成。

在对应gradle文件中,添加如下Douyin块代码,其中appKey的值对应抖音平台中的Client Key,appSecret对应抖音平台中的Client Secret。

ShareSDK {
    devInfo {
        Douyin {
            appKey "xxxxxxxxxxx"
            appSecret "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
            enable true
        }
    }
}

分享示例

以下代码示例分享 HTML 链接至抖音联系人

Platform platform = ShareSDK.getPlatform(Douyin.NAME);
Platform.ShareParams shareParams = new Platform.ShareParams();
shareParams.setShareType(Platform.SHARE_DYIM_WEBPAGE);
shareParams.setTitle("测试分享的标题");
shareParams.setUrl("https://mob.com");
shareParams.setImageUrl("https://xxxxxxxxxx.jpg");
shareParams.setActivity(this);
platform.share(shareParams);
效果图

image-20240711175325146

授权示例

Platform platform = ShareSDK.getPlatform(Douyin.NAME);
ShareSDK.setActivity(this);// 抖音登录需要设置授权Activity
platform.setPlatformActionListener(new PlatformActionListener() {
    @Override
    public void onComplete(Platform platform, int action, HashMap<String, Object> hashMap) {
            Log.d("ShareSDK",platform.getDb().exportData());
    }
    @Override
    public void onError(Platform platform, int action, Throwable throwable) {

    }
    @Override
    public void onCancel(Platform platform, int action) {

    }
});
platform.authorize();
返回信息示例

在ShareSDK成功回调中调用 platform.getDb().exportData(),将返回以下格式信息。

{
    "expiresIn": 1200000,
    "scope": "user_info",
    "union_id": "xxxxxxxxx-xxxxxxxxx-xxxxxxxxx",
    "nickname": "xxxxxxxxx",
    "avatar": "https://xxxxxxxxxxxxxxxxxx.jpeg",
    "k_m_sp_cpt_dn": 1,
    "userID": "xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx",
    "expiresTime": 172000000000,
    "token": "xxxxxxxxx.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyxxxxxxxxx",
    "refreshToken": "xxxxxxxxx.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

iOS

在集成抖音相关能力之前,请先按照ShareSDK集成指南完成ShareSDK的集成。

SDK集成

添加白名单

f10c37d1715382c15980641240cf81e4.JPG

配置scheme

7ee469dc631ade10a9d898f6770b36df.JPG

初始化SDK

在使用抖音能力之前,需要先对其初始化,其中setupDouyinByAppKey的值对应抖音平台中的Client Key,appSecret对应抖音平台中的Client Secret。

[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
 [platformsRegister setupDouyinByAppKey:@"xxxxxx" appSecret:@"xxxxxx"];
}];

分享示例

以下代码示例分享网络图片至抖音

#import <ShareSDK/ShareSDK.h> &nbsp; 
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];&nbsp; 
[parameters SSDKSetupShareParamsByText:nil
    images:@"http://download.sdk.mob.com/web/images/2019/07/30/14/1564468183056/750_750_65.12.png"
       url:nil
       title:nil
       type:SSDKContentTypeImage];
[ShareSDK share:SSDKPlatformTypeDouyin parameters:parameters onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) { &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 }];
效果图

111.png

授权示例

#import <ShareSDK/ShareSDK.h>

[ShareSDK authorize:SSDKPlatformTypeDouyin settings:nil onStateChanged:^(SSDKResponseState state, SSDKUser *user, NSError *error) {
        NSDictionary*dic = [user credential].rawData;
        NSLog(@"%@", dic);
        NSLog(@"-----%@--------",user.rawData );
}];
返回信息示例
{
    "access_token" = "xxxxxx7f36b5ace4b2e64e4a43ed1mbWl7ESJI6ADHG24KDPqgJsfZyRP_hl";
    captcha = "";
    "desc_url" = "";
    description = "";
    "error_code" = 0;
    "expires_in" = 1296000;
    "log_id" = xxxxxx117243548621E8AB0F7A90B3D97;
    "open_id" = "xxxxxxc313-5434-b01e-be0e7d8917d7";
    "refresh_expires_in" = 2592000;
    "refresh_token" = "xxxxxx16014f15319f4c9bad34cd4dae4DOctisupk4mogbZruSBdZkP5680Q_hl";
    scope = "user_info";
}
1 2 3 4 5 $sharesdk.shareContent($sharesdk.platformID.SinaWeibo, params, function (platform, state, shareInfo, error) { alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error); }); 一键分享 1 2 3 4 5 $sharesdk.oneKeyShareContent([$sharesdk.platformID.SinaWeibo, $sharesdk.platformID.TencentWeibo], params, function (platform, state, shareInfo, error) { alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error); }); 关于具体的分享参数名称,请参考“不同平台分享内容的详细说明”章节的说明。 用户授权 调用ShareSDK中的authorize方法可进行用户授权。代码如下: 1 2 3 4 5 $sharesdk.authorize($sharesdk.platformID.SinaWeibo, function (platform, state, error){ alert("state = " + state + "\nerror = " + error); }); 获取用户资料 调用ShareSDK中的getUserInfo来获取授权用户的信息。代码如下: 1 2 3 4 5 $sharesdk.getUserInfo($sharesdk.platformID.SinaWeibo, function (platform, state, user, error) { alert("state = " + state + "\nuser = " + user + "\nerror = " + error); }); iOS部分集成步骤(不发布iOS版本可略过此部分) 导入JS桥接的iOS版本组件 打开下载的JS包里的iOS/ShareSDKForJS/ShareSDKForJS.xcodeproj项目工程,选择ShareSDKForJS静态库运行Xcode,如图: 700px-js_doc_001.png 运行成功之后,请大家打开文件找到Build文件夹,然后进入文件中找到build/Products/Debug-iphonesimulato /libShareSDKForJS.a文件以及找到build/Products/Debug-iphonesimulator/usr/local /include/ShareSDKJSBridge.h这个文件,再将libShareSDKForJS.a和ShareSDKJSBridge.h这 2个文件导入到你的项目里,如图 700px-js_doc_002.png 注意:(如果在分享中弹不出分享的菜单,如果大家的ShareSDK.js文件是本地的,要把这个加到Build Phases里面的Copy Bundle Resources选项) 下载iOS版本ShareSDK,并导入到工程中。 登录ShareSDK的官方网站下载并解压最新版本的SDK。如果您还尚未下载,请 点击这里下载 或者访问 http://sharesdk.cn/Download 。解压后如图所示: 700px-js_doc_003 将ShareSDK导入工程中,并添加相应的依赖库。此步骤可以参考:《iOS快速集成指南》中的第一、第二步。执行完成后,如下图所示: 700px-js_doc_004.png 为UIWebView添加消息捕获 先导入ShareSDKJSBridge.h头文件。 1 #import "ShareSDKJSBridge.h" 然后给UIWebView设置一个委托对象,如: 1 webView.delegate = self; 注意:webView是UIWebView的对象实例。 最后实现shouldStartLoadWithRequest委托方法,并在方法中加入JSBridge的captureRequest方法,代码如下: 1 2 3 4 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { return ![[ShareSDKJSBridge sharedBridge] captureRequest:request webView:webView]; } 添加完毕后就可以对工程进行运行测试。 Android部分集成步骤(不发布Android版本可略过此部分) 导入的步骤如下: 1、参考”安卓快速集成文档“章节的说明,导入ShareSDK for Android的jar库和图片、文字资源。 2、复制github上的jsdemo项目中”cn.sharesdk.js”包中的源代码复制到你的项目中。QQ截图20150304142013 3、在您WebView加载页面地址之前。调用ShareSDKUtils.prepare(webview, webviewClient); 请注意,ShareSDKUtils.prepare方法要在WebView.setWebViewClient(WebViewClinet);之后调用,而且此后不能再调用setWebViewClient方法,否则ShareSDK的初始化操作可能失败。 下面的代码来自github上的demo: Objective-C 1 2 3 4 5 6 7 8 9 10 11 12 public class MainActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); WebView wvBody = new WebView(this); WebViewClient wvClient = new WebViewClient(); wvBody.setWebViewClient(wvClient); wvBody.setWebChromeClient(new WebChromeClient() { public boolean onJsAlert(WebView view, String url, String message, JsResult result) { return super.onJsAlert(view, url, message, result); } });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MobTech袤博科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值