准备工作

业务代码

初始化

#import <ShareSDK/ShareSDK.h>
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
//抖音
[platformsRegister setupDouyinByAppKey:@"app_key" appSecret:@"app_secret"];
}];

分享

可以分享图片,相册图片,单个视频,多个视频

分享图片

// 通用参数设置----图片分享可以使用相册地址、沙盒路径、网络图片地址
NSString *imageURL = @"http://img.hb.aicdn.com/28a4962c297205e0868cdb45bb527e2bc5319f08f019-l7N1A3_fw658";
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
[parameters SSDKSetupShareParamsByText:nil
images:@[imageURL]
url:nil
title:nil
type:SSDKContentTypeImage]; [ShareSDK share:SSDKPlatformTypeDouyin parameters:shareParams onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {
if (state == SSDKResponseStateSuccess) {
NSLog(@"成功!");
}else{
NSLog(@"%@",error);
}
}];

分享视频

// 通用参数设置----视频分享可以使用相册地址、沙盒路径,不支持网络视频,如果使用网络视频请先下载放到沙盒目录下或相册里
NSString *videoPath = [[NSBundle mainBundle] pathForResource:@"cat" ofType:@"mp4"];
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
[parameters SSDKSetupShareParamsByText:nil
images:nil
url:[NSURL URLWithString:videoPath]
title:nil
type:SSDKContentTypeVideo]; [ShareSDK share:SSDKPlatformTypeDouyin parameters:parameters onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {
if (state == SSDKResponseStateSuccess) {
NSLog(@"成功!");
}else{
NSLog(@"%@",error);
}
}];

分享多个视频

 // 平台定制----只能使用相册且使用相册标识localIdentifier
__block NSMutableArray *assetLocalIds = [NSMutableArray array];
__weak typeof(self) weakSelf = self; [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ NSURL *url_1 = [[NSBundle mainBundle] URLForResource:@"cat" withExtension:@"mp4"];
NSURL *url_2 = [[NSBundle mainBundle] URLForResource:@"cat" withExtension:@"mp4"]; PHAssetChangeRequest *req_1 = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:url_1];
NSString *localId_1 = req_1.placeholderForCreatedAsset.localIdentifier;
[assetLocalIds addObject:localId_1]; PHAssetChangeRequest *req_2 = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:url_2];
NSString *localId_2 = req_2.placeholderForCreatedAsset.localIdentifier;
[assetLocalIds addObject:localId_2]; } completionHandler:^(BOOL success, NSError * _Nullable error) {
if (success) {
dispatch_async(dispatch_get_main_queue(), ^{
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
[parameters SSDKSetupDouyinParamesByAssetLocalIds:assetLocalIds type:SSDKContentTypeVideo]; [ShareSDK share:SSDKPlatformTypeDouyin parameters:parameters onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {
if (state == SSDKResponseStateSuccess) {
NSLog(@"成功!");
}else{
NSLog(@"%@",error);
}
}];
});
}
}];

授权

[ShareSDK authorize:SSDKPlatformTypeDouyin settings:nil onStateChanged:^(SSDKResponseState state, SSDKUser *user, NSError *error) {
if (state == SSDKResponseStateSuccess)
{
NSLog(@"%@",[user.credential rawData]);
NSLog(@"%@",user.rawData); }
else
{
NSLog(@"%@",error);
}
}];

抖音分享和授权(iOS)的更多相关文章

  1. 快速实现抖音的分享&登录(android)

    快速实现抖音分享与第三方登录 准备工作 1.注册抖音的key到抖音开放平台,点击这里查看步骤: 2.集成ShareSDK到Mob官网文档页面查看即可,点击这里查看集成: 业务代码 分享要求: 视频: ...

  2. 利用mitmproxy实现抖音Cookie,设备ID获取(一)

    先讲解一下思路,是利用mitmproxy代理https协议,从而判定抖音个人信息接口,在个人信息接口的返回体接收时将用户信息数据,以及Header头(主要是Cookie),Query体(包含设备ID) ...

  3. 手淘架构组最新实践 | iOS基于静态库插桩的⼆进制重排启动优化 抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 编译期插桩

    抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 原创 Leo 字节跳动技术团队 2019-08-09 https://mp.weixin.qq.com/s/Drmmx5JtjG ...

  4. iOS - 抖音效果

    抖音的转场动画—iOS https://www.jianshu.com/p/29b0165de712 抖音的上下滑实现—iOS https://www.jianshu.com/p/e8799510c7 ...

  5. 如何通过ShareSDK的 Unity3D快速接入Android/iOS分享与授权

    Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎:在游戏 ...

  6. iOS多种刷新样式、音乐播放器、仿抖音视频、旅游App等源码

    iOS精选源码 企业级开源项目,模仿艺龙旅行App 3D立体相册,可以旋转的立方体 横竖屏切换工具,使用陀螺仪检测手机设备方向,锁屏状... Swift版Refresh(可以自定义多种样式)架构方面有 ...

  7. PHP根据抖音的分享链接来抓包抖音视频

    现在抖音是个很火的短视频平台,上面有许多不错的小视频.今天教大家怎么用PHP技术来获取到抖音上的的内容. 1:打开抖音选中你认为好的视频点击分享,复制链接,然后你会获取到如下的内容: #科比 愿你去的 ...

  8. iOS 仿抖音 视频裁剪

    1.最近做短视频拍摄.其中的裁剪界面要做得和抖音的视频裁剪效果一样 需求:  裁剪有一个最大裁剪时间.最小裁剪时间.左右拖动可以实时查看对应的视频画面.拖动进度条也能查看对应的画面 .拖动底部视图也能 ...

  9. Python爬虫帮你打包下载所有抖音好听的背景音乐,还不快收藏一起听歌【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

随机推荐

  1. Ionic框架搭建简明教程

    1.安装node.js 安装教程:https://www.cnblogs.com/zhouyu2017/p/6485265.html 安装完成后,执行:cnpm install –g cordova ...

  2. MAIL服务器搭建

    一,邮件服务: 优    点 缺   点 应 用 sendmail 有点年代久远,稳定功能多 太过于臃肿,配置文件多且繁琐 6以前默认 postfix 优点更稳定,且交轻便 发布年限较短,市场占有率低 ...

  3. GDI+ 或 GdiPlus 在VC6下的使用方法

    1.在你的app类头文件中假如以下代码(红字显示) #if !defined(AFX_WALKLTDEMO_H__826A807C_C01D_4FF0_9248_A6BD0369F3A8__INCLU ...

  4. leetcode1034

    class Solution: def __init__(self): self.V = list() def bfs(self,grid,color,rows,coloums,r,c,ocolor) ...

  5. 如何用jquery获取form表单的值

    $(function(){ $('.btn').click(function(){ alert($('#form').serialize()); }) }) 这样就获取到了 #form的值.

  6. 使用TensorFlow训练模型的基本流程【转】

    原文地址(https://github.com/wmpscc/TensorflowBaseDemo ) 本篇文章将介绍使用tensorflow的训练模型的基本流程,包括制作读取TFRecord,训练和 ...

  7. CodeForces - 864C-Bus-(模拟加油站问题)

    https://vjudge.net/problem/CodeForces-864C 题意:两地之间有个加油站,往返走k个单程,最少加油多少次. 大佬几十行代码就解决,我却要用一百多行的if语句模拟解 ...

  8. HATEOAS 约束

    HATEOAS 约束 HATEOAS(Hypermedia as the engine of application state)是 REST 架构风格中最复杂的约束,也是构建成熟 REST 服务的核 ...

  9. (项目六)Mha-Atlas-MySQL高可用方案实践

    mha-mysql环境准备: 三台虚拟机,都安装了mysql,都关闭防火墙和selinux,同时在每台虚拟机上都做映射 软件包 1) mha管理节点安装包: mha4mysql-manager-0.5 ...

  10. Linux ansible 之 playbook

    playbook 剧本 yaml 字典 key:value 列表 [] - 后缀名:yaml.yml playbook 命令格式 Usage: ansible-playbook [options] p ...