ShareSDK Android SDK第三方平台分享参数说明

时间:2021-06-09 01:19:01

 虽然ShareSDK尽可能屏蔽了不同社交平台间接口api差异,但是分享接口需要传递的差异依然会因平台而异,本文将以列表的形式展示不同平台的分享参数(ShareParams)的字段要求,以方便开发者使用时翻阅。 注意没有标明可选的就是必填参数,不能为null或者空字符串,另一种情况是例如有imageUrl(”网络图片链接”)、imagePath(“/sdcard/abc.jpg”)、imageData(bitmap)是三选一。

国内平台

新浪微博

新浪微博支持分享文字、本地图片、网络图片

参数说明 text:140字符以内

image:web分享ShareSDK不做限制直接提交给微博处理,微博客户端分享图片不能大于2M,仅支持JPEG、GIF、PNG格式; 注:微博分享链接是将链接写到setText内:eg:setText(“分享文本 http://mob.com”);

ImageArray String类型图片数组,可传手机本地图片路径和图片链接,分享多图的时候需要将Url参数注释掉,否则会默认分享链接;

分享文本 text

  注意:以下分享类型必须有新浪微博客户端才可以分享,如果imagePath和imageUrl同时存在,imageUrl将被忽略;

分享图文 text imagePath
imageUrl
imageData
分享本地视频 FilePath("/sdcard/video.MP4") text("文本")

腾讯微博

腾讯微博支持分享文字、本地图片、网络图片和经纬度信息 参数说明 text:最多140个字字符 image:图片最大4M

分享文本 text latitude(可选) longitude(可选)
分享图文 text imagePath latitude(可选) longitude(可选)
imageUrl ImageArray

2.5.0以后的版本新增分享多张图片的功能ImageArray。 由于腾讯微博分享网络图片并不属于高级接口,因此imageUrl优先级高于imagePath,这就是说,如果imagePath和imageUrl同时存在,imagePath将被忽略。

QQ空间

提示:必须需要QQ客户端才可以分享

QQ空间支持分享文字和图文 参数说明 title:最多200个字符 text:最多600个字符

分享视频 FilePth("/sdcard/视频.mp4") ShareType(platform.SHARE_VIDEO)
分享文本 text ShareType(platform.SHARE_TEXT)
分享网页 text imagePath title titleUrl ShareType(platform.SHARE_WEBPAGE)
imageUrl
分享图片 imagePath ShareType(platform.SHARE_IMAGE)
imageUrl

微信(好友、朋友圈、收藏)

提示:
1.必须需要客户端才可以分享;
2.微信客户端版本从6.7.2以上开始,取消分享提示分享成功;即取消分享和分享成功都返回成功事件;
3.Android11及之后的版本,微信分享图片不支持用imageData(bitmap)接口设置参数;

绕过审核只对微信好友、微信朋友圈有效 微信分享如果是绕过审核(配置信息BypassApproval属性设置为true为绕过审核),微信朋友圈可以分享单张图片或者图片与文字一起分享,微信好友可以进行文字或者单张图片进行分享,分享回调不会正确回调。 不绕过审核,微信三个平台中,好友的功能最完整,朋友圈不能分享应用,收藏不能分享应用,表格下以好友为例子: 参数说明 title:512Bytes以内 text:10KB以内 imageData:10M以内 imagePath:10M以内(传递的imagePath路径不能超过10KB) imageUrl:10KB以内 musicUrl:10KB以内 url:10KB以内(MobSDK没有对参数另做限制,参数限制详细情况可以参考微信官方的限制详情点击这里查看)

注意:微信分享分绕过审核和不绕过审核,不绕过审核必须保证微信后台配置的签名与您的app的签名一致,否则无法分享;

分享文本 shareType(Platform.SHARE_TEXT) text
分享图片 shareType(Platform.SHARE_IMAGE) text(设置了不会显示,可选参数) imagePath
imageUrl
imageData
分享音乐 shareType(Platform.SHARE_MUSIC) title text(朋友圈不显示此字段) imagePath musicUrl url(消息点击后打开的页面)
imageUrl
imageData
分享视频 shareType(Platform.SHARE_VIDEO) title text(朋友圈不显示此字段) imagePath url(视频网页地址)
imageUrl
imageData
分享网页 shareType(Platform.SHARE_WEBPAGE) title text(朋友圈不显示此字段) imagePath url
imageUrl
imageData
分享文件 shareType(Platform.SHARE_FILE) title text(不显示此字段) filePath
分享小程序 shareType(Platform.SHARE_WXMINIPROGRAM) title setWxUserName("小程序原始ID") setWxPath("小程序页面路径") url text imagePath
imageUrl
imageData

微信并无实际的分享网络图片和分享bitmap的功能,如果设置了网络图片,此图片会先下载会本地,之后再当作本地图片分享,因此延迟较大。bitmap则好一些,但是由于bitmap并不知道图片的格式,因此都会被当作png编码,再提交微信客户端。

注意:分享小程序说明,详细分享流程点击这里查看

目前只支持分享微信好友,分享小程序必须配置小程序的原始ID和分享小程序页面的路径;配置方法有两种;

第一种:在方法中配置,如上表所示加上setWxUserName和setWxPath;

第二种:在ShareSDK.xml文件中配置上特殊参数,如下所示:userName是小程序的原始ID,path是小程序内的页面路径;而且必须保证微信开放平台与微信公众/小程序绑定才可以分享;

<Wechat
    Id="4"
    SortId="4"
    AppId="wx4868b35061f87885"
    AppSecret="64020361b8ec4c99936c0e3999a9f249"
    userName="gh_afb25ac019c9"
    path="/page/API"
    BypassApproval="false"
    Enable="true" />

提示:微信客户端版本从6.7.2以上开始,取消分享提示分享成功;即取消分享和分享成功都返回成功事件;

QQ分享

QQ分享支持图文和音乐分享 参数说明 title:最多30个字符 text:最多40个字符 QQ分享图文和音乐,在PC版本的QQ上可能只看到一条连接,因为PC版本的QQ只会对其白名单的连接作截图,如果不在此名单中,则只是显示连接而已. 如果只分享图片在PC端看不到图片的,只会显示null,在手机端会显示图片和null字段。

分享图片 ImageUrl
imagePath
分享链接 title titleUrl text imagePath
imageUrl
分享音频 title titleUrl text imagePath musicUrl
imageUrl
分享QQ小程序 shareType(Platform.QQ_MINI_PROGRAM) text title titleUrl imageUrl setQQMiniProgramAppid("小程序appid") setQQMiniProgramPath("小程序页面路径") setQQMiniProgramType("")(小程序类型:develop/trial/release)
打开QQ小程序 shareType(Platform.OPEN_QQMINIPROGRAM) text title titleUrl imageUrl setQQMiniProgramAppid("小程序appid") setQQMiniProgramPath("小程序页面路径") setQQMiniProgramType("")(小程序类型:develop/trial/release)

(3.1.0版本之后,包含3.1.0)QQ绕过审核形式支持分享多图(BypassApproval="true"),ImageArray String类型图片数组,可传手机本地图片路径和图片链接

绕过审核分享多图 text(可不传) imageArray

人人网

人人网支持分享文字和图文 参数说明 title:最多30个字符 text:最多200个字符 comment:最多500个字符 image:支持bmp,png,gif,jpg格式

分享文本 text
分享链接 text url
分享图文 comment imagePath
imageUrl

与QQ空间一样,人人网不直接分享本地图片,如遇本地图片,会先将其发送到ShareSDK的文件服务器以后取得网络地址,再行分享

开心网

开心网可以分享文字和图片,其中图片可以支持网络图片和本地图片 参数说明 text:最多140个字符或者280个英文字母字符 image:最大10M,支持jpg/jpeg/gif/png/bmp格式

分享文本 text
分享图文 text imagePath
imageUrl

豆瓣

豆瓣支持分享文字和图文 参数说明 image:支持JPEG,GIF,PNG格式,最大3M

(注:近期豆瓣api正在维护,ApiKey暂时不对个人开放申请,如有企业合作相关要求,请发邮件到bd-team@douban.com,将有负责同事尽快与您联系)

分享文本 text
分享图文 text imagePath
imageUrl

有道云笔记

有道云笔记事实上不是分享,而是创建一个笔记,当前可以发图片和图文笔记:

分享文本 title notebook(可选) address(可选) text url(可选)
分享图文 title notebook(可选) address(可选) text imagePath url(可选)
imageUrl

易信(好友和朋友圈)

提示:必须需要客户端才可以分享

易信的接口与微信的类似,但是易信暂时不支持分享文件和表情 参数说明 title:不能超过512个字 text:不能超过10240个字 imageData:不能超过10485760个字节 imagePath:不能超过10485760个字节 imageUrl:URL长度不能超过10240个字节

分享文本 shareType(SHARE_TEXT) title text
分享图片 shareType(SHARE_IMAGE) title text imagePath
imageUrl
imageData
分享音乐 shareType(SHARE_MUSIC) title text imagePath musicUrl url(消息点击后打开的页面)
imageUrl
imageData
分享视频 shareType(SHARE_VIDEO) title text imagePath url(视频网页地址)
imageUrl
imageData
分享网页 shareType(SHARE_WEBPAGE) title text imagePath url
imageUrl
imageData

明道

明道支持分享文本或图文 参数说明 text:最多为2080个字符

注:明道限制分享网络图片的话必须要用https的图片链接,并且明道分享出去之后不给显示图片;

分享文本 text url
分享网页 text url imagePath
imageUrl

明道本身只支持分享网络图片,如果打算分享imagePath,需要先将文件上传到ShareSDK的文件服务器,之后再将得到的地址当作网络图片分享。由于imagePath更耗流量,因此imageUrl优先级更高

支付宝

提示:生活圈只支持分享网页、必须需要客户端才可以分享

分享文本 shareType(SHARE_TEXT) title text
分享图片 shareType(SHARE_IMAGE) title text imagePath
imageUrl
imageData
分享网页 shareType(SHARE_WEBPAGE) title text imagePath url(消息点击后打开的页面)
imageUrl
imageData

钉钉

提示:必须需要客户端才可以分享

分享文本 shareType(SHARE_TEXT) title text
分享图片 shareType(SHARE_IMAGE) title text imagePath
imageUrl
imageData
分享网页 shareType(SHARE_WEBPAGE) title text imagePath url(消息点击后打开的页面)
imageUrl
imageData

美拍

提示:美拍是调用系统客户端分享的,必须需要客户端才可以分享,没有准确的回调,点击调用客户端即默认提示分享成功

分享视频 FilePath(/sdcard/视频.mp4)
分享图片 FilePath(/sdcard/图片.jpg)

抖音

注意:目前分享图片只支持本地图片分享,建议直接保存到手机相册路径下分享,否则抖音可能无法找到图片;分享内容带水印可能会受到限制或被删除,请勿携带水印。

要求:

视频:

  • 1、时长必须符合要求,最大不能超过1小时,最小值抖音动态配置;
  • 2、必须是mp4文件,并且支持解析;
  • 3、画面比例,最大边/最小边 要小于4
  • 4、画幅尺寸最大边要小于1100px
  • 5、多段视频拼接数不超过12个

图片:

  • 1、宽高大于360
  • 2、宽高比符合要求(需1/2.2<=宽高比<=2.2)
  • 3、多图不超过12张
分享多图 shareType(SHARE_IMAGE) imageArray(String[] AVATARS(多个或单个本地图片路径)) title(选填) hashtags(参数为数组格式,选填) hashtag(title中加tag,选填) tagPositio(插入标题的位置索引,参数为int类型,eg:1表示title第一个字符之后 插入,选填) stack(贴纸,选填) setActivity //适配9.0系统
分享视频 shareType(SHARE_VIDEO) VideoPathArray(String[] AVATARS(多个或单个本地视频路径)) title(选填) hashtags(参数为数组格式,选填) hashtag(title中加tag,选填) tagPositio(插入标题的位置索引,参数为int类型,eg:1表示title第一个字符之后 插入,选填) stack(贴纸,选填) setActivity //适配9.0系统
图片+视频混合分享(3.9.6及之后版本支持) shareType(Platform.DY_MIXFILE) ViDYMixFileArray(new String[]{本地图片绝对地址,本地视频绝对地址})(合成后顺序为传入顺序) title(选填) hashtag(参数为数组格式,选填) hashtags(title中加tag,选填) tagPositio(插入标题的位置索引,参数为int类型,eg:1表示title第一个字符之后 插入,选填) stack(贴纸,选填) setActivity //适配9.0系统

ShareSDK 3.10.0及之后版本支持分享内容至好友列表,分享参数为:

分享图片 shareType(SHARE_DYIM_IMG) imagePath(本地图片路径)) setActivity //适配9.0系统
分享链接 shareType(SHARE_DYIM_WEBPAGE) imageUrl(网络图片地址,选填)) title url(网络链接,链接需要在抖音后台认证) setActivity //适配9.0系统

企业微信

** 提示:必须需要客户端才可以分享 **

分享文本 shareType(Platform.SHARE_TEXT) text
分享文件 shareType(Platform.SHARE_FILE) text filepath
分享图片 shareType(Platform.SHARE_IMAGE) text imagePath
分享视频 shareType(Platform.SHARE_VIDEO) text filepath
分享网页 shareType(Platform.SHARE_WEBPAGE) title text imagePath url
imageUrl

西瓜视频

** 提示:必须需要客户端才可以分享,只支持分享网络视频 **

分享视频 shareType(Platform.SHARE_VIDEO) videoUri setActivity //适配9.0系统

快手

** 提示:必须需要客户端才可以分享,只支持分享网络视频 **

** ShareSDK的3.8.2 版本适配快手原生SDK具体可以点击这里查看**

分享视频 setShareType(Platform.SHARE_VIDEO) setVideoUri setActivity //适配9.0系统
分享图片 setShareType(Platform.SHARE_IMAGE) setImagePath setActivity //适配9.0系统

小红书

** 提示:必须需要客户端才可以分享,只支持分享网络视频 **

分享视频 setShareType(Platform.SHARE_VIDEO) setVideoUri setActivity //适配9.0系统
分享图片 setShareType(Platform.SHARE_IMAGE) setImagePath setActivity //适配9.0系统

绿洲

** 提示:必须需要客户端才可以分享 **

分享图片 title comment imageUriList(本地图片uri参数)
imageUrlList(本地图片绝对路径分享)
分享网页 title comment videoUriOasis(本地视频uri参数)
videoPathOasis(本地视频绝对路径分享)

国外平台

Facebook

分享参数说明 image:至少200x200像素

注: 1.Facebook分享链接,所展示的图片、文字自动从分享的url中自动获取;

2.加载Facebook原生SDK的方法具体可以点击这里查看;

3.web引文分享(在web上方可以展示文字显示)-->Quote;

4.话题分享(在移动端点击分享出去的话题可进行评论等)-->Hashtag

分享网页 Url Quote("测试web引文分享")
分享图片 Hashtag("测试话题分享") imagePath
imageUrl
分享视频 FilePth("/sdcard/视频.mp4")
分享多图 ImagePath("/sdcard/图片.jpg") setImageArray(AVATARS)

注意:分享多图内是传一个string数组,内部必须传sdcard目录下的本地图片,而已图片不能相同

Facebook提供了一种分享链接,卡片式的效果, 具体可以点击这里查看

Twitter

Twitter支持文字和图文分享

分享文本 text
分享图文 text imagePath
imageUrl
ImageArray(分享多图)
分享视频 FilePth("/sdcard/视频.mp4") ShareType(platform.SHARE_VIDEO)

Twitter提供了一种分享链接,卡片式的效果, 具体可以点击这里查看 Twitter平台比较特殊分享之前必须授权,授权时,Twitter平台会有一个界面提示用户会用到哪些权限,而Twitter 的App权限分级过于粗糙,分享动作必需的读写权限会申请过多权限,关于这个情况,我们在3.8.2版本进行了适配,具体可以点击这里查看

印象笔记

提示:印象笔记最新版本,分享成功后不直接回调,需要按返回键才可以,并且返回取消操作分享也成功的,也提示成功的回调。

印象笔记可以支持文字和图文的分享,也支持利用客户端分享,只要在ShareSDL.xml中配置就行

分享文字 title notebook(可选) stack(可选) publish(可选,表示是否公开) text tags(可选)
分享图文 title notebook(可选) stack(可选) publish(可选,表示是否公开) text imagePath/imageUrl tags(可选)
分享视频 text(可选) FilePath ShareType(Platform.SHARE_VIDEO)

Linked-in

Linked-in支持分享文字或图文 分享参数说明 title:最多200个byte text:最多256个byte comment:最多700个byte

分享链接(仅支持web端分享) title LinkedinDescription("描述") text url("分享链接")
分享文本 text ShareType(Platform.SHARE_TEXT)
分享图片 (仅支持客户端分享) imageUrl("网络图片地址") ShareType(Platform.SHARE_IMAGE)

Linked-in本身并不支持分享本地图片,因此本地图片会先上传到ShareSDK文件服务器以后,再将返回图片链接进行分享。由于上传图片更耗流量,因此imageUrl的优先级高于imagePath。

FourSquare

FourSquare可以分享图文,但是分享时需要携带位置信息

分享文字 text venueName venueDescription latitude longitude
分享图文 text venueName venueDescription latitude longitude imagePath
imageUrl

Pinterest

提示:Pinterest必须用客户端才可分享,直接调用系统客户端分享,所以无法获取准确回调,点击调用Pinterest就默认提示成功。

分享图文 text url imagePath
imageUrl

Flickr

Flickr一般用来分享图文

分享图文 title isPublic(可选,是否公开) isFriend(可选,是否朋友可见) isFamily(可选,是否家人可见) safetyLevel(可选,安全级别) contentType(可选,内容级别) hidden(可选,可见级别) text imagePath/imageUrl tags(可选)

Tumblr

Tumblr支持文字和图文分享,ShareSDK 3.9.2新增链接、音乐、视频分享

分享文本 ShareType(Platform.SHARE_TEXT) text title
分享图文 ShareType(Platform.SHARE_IMAGE) text url imagePath
imageUrl
分享连接 ShareType(Platform.SHARE_WEBPAGE) text(可选) title(可选) author(可选) quote(可选) imageUrl(可选) url
分享音乐 ShareType(Platform.SHARE_MUSIC) title(可选) musicUrl(音乐地址url)
filepath(limit 10MB))
分享视频 ShareType(Platform.SHARE_VIDEO) title(可选) url(视频地址url))
filepath(limit 100MB))

Dropbox

理论上dropbox可以分享任何东西,只是当前的接口不提供直接分享文字的功能,图片分享则会被放到dropbox指定的图片目录下。dropbox一般用来分享文件,而不是图文分享

分享视频 filePath(/sdcard/视频.mp4) ShareType(Platform.SHARE_VIDEO)
分享图片 imagePath/imageUrl
分享文件 filePath

VK

VK支持分享文字和图文

分享文字链接 gropuId(可选,指定分享的组) url friendsOnly(可选,是否仅朋友可见) text latitude(可选) longitude(可选)
分享图文链接 gropuId(可选,指定分享的组) url friendsOnly(可选,是否仅朋友可见) text imagePath latitude(可选) longitude(可选)
imageUrl

Instagram

提示:Instagram必须用客户端才可分享,直接调用系统客户端分享,所以无法获取准确回调,点击调用Instagram就默认提示成功。

分享图片 text(不显示) ImagePath
imageUrl
分享视频 text(不显示) FilePath(/sdcard/视屏文件) ShareType(Platform.SHARE_VIDEO)

Line

提示:Line必须用客户端才可分享,直接调用系统客户端分享,所以无法获取准确回调,点击调用Line就默认提示成功。

Line支持分享文本或图片,但两者不能同时分享 参数说明

分享文本 text
分享图片 imagePath
imageUrl

KakaoStory

提示:调用系统客户端分享,所以无法返回准确回调,取消分享也会提示成功回调。

分享链接(网络图片) imageUrl
分享本地图片 imagePath

KakaoTalk

提示:调用系统客户端分享,所以无法返回准确回调,取消分享也会提示成功回调。ShareSDK的3.7.5 版本适配Kakao原生SDK具体可以点击这里查看

分享信息 text(文本)
分享图片 imagePath
imageUrl

WhatsApp

提示:调用系统客户端分享,所以无法返回准确回调,取消分享也会提示成功回调。

分享文本 text title(可选)
分享图片 imagePath imageUrl
分享视频 filePath(视频本地sdcard地址)
打开聊天界面 address(联系人电话号码)

Instapaper

分享网页 url title(可选) text(可选)

FacebookMessenger

提示:无法返回准确回调,取消分享也会提示成功回调。

分享图片 ShareType(Platform.SHARE_IMAGE) ImageUrl
imagePath

** 3.9.1及以上版本增加系统分享功能,设置bypassApproval=true,既可以使用,系统分享支持的分享内容如下: **

分享文本 ShareType(Platform.SHARE_TEXT) text
分享图片 ShareType(Platform.SHARE_IMAGE) imagePath
imageUrl
分享多图 ShareType(Platform.SHARE_IMAGE) imageArray
分享视频 ShareType(Platform.SHARE_VIDEO) filePath

Youtube

分享视频 FilePath("/sdcard/视频.mp4")

Telegram

提示:调用系统客户端分享,所以无法返回准确回调,取消分享也会提示成功回调。

分享文字 text
分享图片 imagePath("/sdcard/abc.png")
imageUrl("网路图片链接")

Reddit

分享文本 ShareType(Platform.SHARE_TEXT) text("需要分享的内容") title Subreddit("分享的版块")
分享链接 ShareType(Platform.SHARE_WEBPAGE) text title url("分享的链接") Subreddit("分享的版块")
分享图片 ShareType(Platform.SHARE_IMAGE) text title url("分享的链接") Subreddit("分享的版块") imageUrl("网路图片链接")

TikTok

分享多图 shareType(SHARE_IMAGE) imageArray(String[] AVATARS(多个或单个本地图片路径)) hashtags(参数为数组格式) setActivity //适配9.0系统
分享视频 shareType(SHARE_VIDEO) VideoPathArray(String[] AVATARS(多个或单个本地视频路径)); hashtags(参数为数组格式) setActivity //适配9.0系统

系统平台

邮件

提示:邮件调用的系统默认的邮件客户端,没有准确回调,点击默认提示成功;

邮件分享调用手机上的邮件客户端,如果没有客户端,将不能分享邮件

分享文本 address title text
分享图文 address title text imagePath
imageUrl
分享视频 FilePath("/sdcard/视频.mp4") ShareType(Platform.SHARE_VIDEO)

信息

提示:信息调用的系统默认的邮件客户端,没有准确回调,点击默认提示成功;

信息分短信和彩信,如果设置了标题或者图片,会直接当作彩信发送。发送信息的时候使用手机的信息软件

分享文本 address title text
分享图文 address title text imagePath
imageUrl
分享视频 FilePath("/sdcard/视频.mp4") ShareType(Platform.SHARE_VIDEO)