Share
分享API
接口说明
1. 自定义分享内容到第三方平台
static customShare(params, callback)
参数如下:
params = {
dataList, // 分享的内容
businessCode, // 分享的业务ID,可以为空,设置后,方便BI统计数据
meta // 分享的扩展参数,现在支持的key:isDisableShareResultToast, 是否屏蔽默认分享之后的toast
}
示例:
let dataList = [
{
shareType:"QQ",
imageUrl:"http://share.csdn.net/uploads/24bd27fd3ad6a559873c4aff3bd64a60/24bd27fd3ad6a559873c4aff3bd64a60_thumb.jpg",
title:"分享图书",
text:"这本书的简介大概是这样",
linkUrl:"http://csdn.net"
},
{
shareType:"WeiXin",
imageUrl:"http://share.csdn.net/uploads/24bd27fd3ad6a559873c4aff3bd64a60/24bd27fd3ad6a559873c4aff3bd64a60_thumb.jpg",
title:"分享图书给微信",
text:"这本书的简介是专门为微信定制",
linkUrl:"http://csdn.net/w"
},
{
shareType:"Default", //表示其他未指定的平台,都适用该分享内容
imageUrl:"http://share.csdn.net/uploads/24bd27fd3ad6a559873c4aff3bd64a60/24bd27fd3ad6a559873c4aff3bd64a60_thumb.jpg",
title:"通用分享图书",
text:"这本书的简介是为其他分享定制的",
linkUrl:"http://csdn.net/common_test"
}
];
Share.customShare({
dataList: dataList,
businessCode: "ssss"
}, (status, result) {
// do some thing
});
2. 指定内容,分享到特定平台
static oneShare(params, callback)
参数如下:
params = {
shareType, // 分享的平台类型
imageUrl, // 分享图片的imageUrl,图片下载失败后,继续分享,不带图片
title, // 分享的标题
text, // 分享的内容
linkUrl, // 分享的链接
businessCode, // 分享的业务ID,可以为空,设置后,方便BI统计数据
meta // 分享的扩展参数,V6.5开始支持,现在支持的key:isDisableShareResultToast, 是否屏蔽默认分享之后的toast
}
示例:
Share.customShare({
shareType : "QQZone",
imageUrl : "http://a.hiphotos.baidu.com/ting/pic/item/314e251f95cad1c8ea16a3567d3e6709c93d5115.jpg" ,
title : "我是title",
linkUrl : "我是text",
businessCode : ""
}, (status, result) {
// do some thing
});
3. 调用系统分享
static systemShare(params, callback)
参数如下:
params = {
imageRelativePath, // 将要分享的图片相对路径,相对webapp的路径;需要调用CtripUtil.app_download_data()下载图片
text, // 需要分享的文字,微博分享文字限制在140
title, // 需要分享的标题, v5.4开始支持该字段,微信和email支持
linkUrl // 需要分享的链接, v5.4开始支持该字段
}
示例:
Share.systemShare({
imageRelativePath : "../wb_cache/pkg_name/md5_url_hash",
text : "text to share weibo" ,
title : "我是title",
linkUrl : ""http://www.ctrip.com/"",
}, (status, result) {
// do some thing
});
4. 分享默认内容到各个平台
static defualtShare(params, callback)
参数如下:
params = {
imageUrl, // 分享图片的imageUrl,图片下载失败后,继续分享,不带图片
title, // 分享的标题
text, // 分享的内容
linkUrl, // 分享的链接
businessCode, // 分享的业务ID,可以为空,设置后,方便BI统计数据
}
示例:
Share.defualtShare({
imageUrl : "http://s0.ifengimg.com/2014/11/19/03ee1773b2262aa40a226b97f5b44c97.jpg",
text : "text to share weibo" ,
title : "我是title",
linkUrl : ""http://www.ctrip.com/"",
}, (status, result) {
// do some thing
});
详细参数说明
1. 分享平台(shareType)定义
WeixinFriend
------微信好友WeixinCircle
----微信朋友圈SinaWeibo
---------新浪微博QQ
----------------QQQQZone
------------QQ空间SMS
---------------短信Email
-------------邮件Copy
--------------复制OSMore
------------系统更多分享
2. 分享类型说明
分享类型总共分为3中
- 链接分享——————QQ好友、QQ空间、微信好友、微信朋友圈
- 图片分享——————QQ好友、微信好友、微信朋友圈、微博、邮件
- 文本分享——————所有平台均支持
- 分享优先级 链接分享 > 图片分享 > 纯文本分享
3. 分享参数说明
分享参数总共4个,linkUrl,imageUrl(native为imagePath或者image对象), title, text;
- linkUrl, 分享链接的URL,有该参数时,分享控件定义为链接分享;
- imageUrl, 分享图片的URL,没有linkUrl的,有imageUrl参数的时候,当做图片分享;
- title,分享的标题
- text 分享的内容
4. 分享规则
微信(微信朋友/微信朋友圈) 分享说明:(第三方接口支持:链接分享、图片分享、文本分享)(最低要求title,text:title长度不能超过512字节 text长度不能超过1K image大小不能超过32K)
如果有linkUrl,会被当作链接分享如果没有linkUrl,有图片,当作图片分享如果没有linkUrl,没有图片,当作纯文本分享
- 链接分享,如果未传图片,则使用携程App Icon做分享链接的缩略图;image,linkUrl,titie,text有效;
- 图片分享,image,title,text有效;
纯文本分享,title和text有效; 注意:当链接分享时候,如果BU没提供本地image而是提供了imageURL,我们会去下载,最多10秒,如果超时或者失败使用默认图片
QQ好友 分享说明:(第三方接口支持:链接分享、图片分享、文本分享)(最低要求title,text)
如果有linkUrl,会被当作链接分享 如果没有linkUrl,有图片,当作图片分享 如果没有linkUrl,没有图片,当作纯文本分享;
链接分享,如果未传图片,则使用携程App Icon做分享链接的缩略图;image,linkUrl,titie,text有效;
图片分享,image,title,text有效;
纯文本分享,title和text有效; 注意:当图片分享时候,如果BU没提供本地image而是提供了imageURL,我们会去下载,最多10秒,如果超时或者失败降级为纯文本分享
QQ空间 分享说明:(第三方接口支持:链接分享)(最低要求title,message,webpageUrl 必须传值) 只能链接分享,链接分享消息必须附带linkUrl(如果没有会默认m.ctrip.com)。有图片(image、image path、imageurl)会传递图片做缩略图,没有会使用默认图片做缩略图,image,linkUrl,titie,text有效;
微博分享:(第三方接口支持:文本+图片)(最低要求message message和linkUrl合起来不能大于139个汉字,如果只有message不能超过140个汉字)
如果有本地image会作为分享图片,如果没有本地image有imageURL会下载imageURL作为图片,如果都没有会不发送图片;
- 分享title不起作用;
如果linkUrl有, 分享的message后面会自动添加linkUrl 注意:当下载图片的时候最多10秒,失败或者超时不会发送图片
Email分享:(最低要求message)image,linkUrl,titie,text有效;
图片为所分享的图片;
- 分享title作为Email标题;
如果有linkUrl,分享的text后面会自动添加linkUrl;
短信分享:(最低要求message)linkUrl,text有效;
任何图片资源不起作用
- 分享title不起作用;
如果有linkUrl,分享的text后面会自动添加linkUrl;
复制分享:(最低要求message)linkUrl,text有效;
任何图片资源不起作用
- 分享的title不起作用;
- 如果有linkUrl,分享的text后面会自动添加linkUrl;