share

分享接口支持Web开发者获取终端安装的社交软件环境,调用社交软件的授权页面进行分享操作。若终端安装了对应的社交客户端环境,则调用客户端的授权界面,否则调用WAP页面进行授权。

对象:

  • : JSON对象,分享授权认证参数选项
  • Authorize: 分享授权控件对象
  • : JSON对象,用户位置信息
  • ShareService: 分享服务对象
  • : 分享服务标识
  • ShareMessage: JSON对象,分享消息对象
  • : JSON对象,保存分享消息扩展信息
  • WeixinMiniProgramOptions: JSON对象,微信小程序信息

回调方法:

权限:

permissions

getServices

获取分享服务

  1. void plus.share.getServices(successCB, errorCB);

说明:

获取终端支持的分享通道列表,可用于提示用户进行分享服务器的选择。获取分享服务成功后通过successCB回调返回支持的所有服务列表,获取服务失败则通过errorCB回调返回。

参数:

  • successCB: ()必选 获取分享服务成功回调获取分享服务列表成功时的回调函数,用于返回终端支持的分享服务列表。
  • errorCB: (ShareErrorCallback)可选 获取分享服务失败回调获取分享服务列表失败时的回调函数,用于返回错误信息。

返回值:

void: 无

示例:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
  6. <title>Share Example</title>
  7. <script type="text/javascript">
  8. var shares=null;
  9. // 监听plusready事件
  10. document.addEventListener("plusready", function(){
  11. // 扩展API加载完毕,现在可以正常调用扩展API
  12. plus.share.getServices(function(s){
  13. shares = s;
  14. }, function(e){
  15. alert("获取分享服务列表失败:"+e.message);
  16. });
  17. }, false );
  18. </script>
  19. </head>
  20. <body>
  21. </body>
  22. </html>

sendWithSystem

使用系统组件发送分享

说明:

调用系统分享组件分享消息,通过msg参数设置分享内容。发送成功后通过successCB回调函数通知操作完成,发送失败则通过errorCB回调返回。

参数:

  • msg: (ShareMessage)必选 要发送的分享消息对象用于设置要分享的消息内容,如文字内容,图片等信息。
  • successCB: ()必选 分享操作成功回调调用系统分享操作成功时的回调函数,用于返回操作成功信息。注:此回调并不表示分享消息已经发送成功。
  • errorCB: (ShareErrorCallback)可选 分享操作失败回调调用系统分享操作失败时的回调函数,用于返回操作错误信息。

返回值:

void: 无

平台支持:

  • Android- ALL(支持): 当msg参数中设置图片(msg.pictures属性)时,分享类型为"image/*",在分享时可能只会发送图片(如微信);没有设置图片时分享类型则认为是文本"text/plain"。
  • iOS- ALL(支持): 不同的分享程序对分享内容有要求,如微信分享时必需添加链接地址(msg.href),否则微信分享失败。注:iOS8.0及以上系统表示分享操作成功则表示发送消息成功。

示例:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
  6. <title>Share Example</title>
  7. <script type="text/javascript">
  8. // 监听plusready事件
  9. // 扩展API加载完毕,现在可以正常调用扩展API
  10. }, false);
  11. // 通过系统组件分享
  12. function shareSystem(){
  13. plus.share.sendWithSystem({content:'分享内容',href:'http://www.dcloud.io/'}, function(){
  14. console.log('分享成功');
  15. }, function(e){
  16. console.log('分享失败:'+JSON.stringify(e));
  17. });
  18. }
  19. </script>
  20. </head>
  21. <body>
  22. 使用系统组件发送分享<br/>
  23. <button onclick="shareSystem()">发送分享</button>
  24. </body>

AuthOptions

JSON对象,分享授权认证参数选项


interface plus.share.AuthOptions {
    attribute String appid;
    attribute String appkey;
    attribute String appsecret;
    attribute String redirect_uri;
}
                

说明:

此对象支持的属性值由分享服务的授权认证模块定义。

属性:

  • appid: (String类型)分享服务平台申请的appid动态设置分享服务授权认证时需要使用的appid,仅需要此参数的分享服务(如“微信”、“QQ”)支持。如果未设置则使用运行环境中内置的appid值(如在HBuilder中可在manifest.json的“SDK配置”项中进行设置)。

  • appkey: (String类型)分享服务平台申请的appkey动态设置分享服务授权认证时需要使用的appkey,仅需要此参数的分享服务(如“新浪微博”)支持。如果未设置则使用运行环境中内置的appkey值(如在HBuilder中可在manifest.json的“SDK配置”项中进行设置)。

  • appsecret: (String类型)分享服务平台申请的appsecret动态设置分享服务中需要使用的appsecret,仅需要此参数的分享服务(如“微信”、“新浪微博”)支持。如果未设置则使用运行环境中内置的appsecret值(如在HBuilder中可在manifest.json的“SDK配置”项中进行设置);当开放平台申请的appsecret值涉及到安全问题时,可在应用运行时从服务器获取,然后通过此api动态设置。

  • redirecturl: (String类型)_分享服务平台申请的redirect_url动态设置分享服务中需要使用的redirect_url,仅需要此参数的登录授权服务(如“新浪微博登录”)支持。如果未设置则使用运行环境中内置的redirect_url值(如在HBuilder中可在manifest.json的SDK配置项中进行设置)。

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares = s;
    }, function(e){
        console.log("获取分享服务列表失败:"+e.message);
    } );
}, false);
function shareAction(){
    var s = shares[0];
    if(!s.authenticated){
        s.authorize(functioin(){
            console.log("认证完成!");
        }, function(e){
            console.log("未进行认证");
        }, {
            "appid": "XXXXXX"
        });
    }
}
    </script>
    </head>
    <body>
    </body>
</html>
                

uni-app使用plus注意事项

Authorize

分享授权控件对象


interface plus.share.Authorize{
    // Methods
    function void load(id);
    function void setVisible(visible);

    // Events
    function void onloaded();
    function void onauthenticated();
    function void onerror();
}
                

说明:

Authorize对象表示分享控件对象,用于在窗口中显示分享控件,使用此对象可自定义分享授权界面。

构造:

  • ): 创建分享授权控件对象

方法:

  • load: 加载分享授权页面
  • : 设置分享授权控件是否可见

事件:

  • onloaded: 分享控件加载完成事件
  • : 分享授权认证成功事件
  • onerror: 分享授权认证失败事件

Authorize(id,display)

创建分享授权控件对象


var obj = new plus.share.Authorize(id, display);
                        

说明:

根据指定的id的元素创建分享控件。

参数:

  • id: (DOMString)必选 分享控件在窗口的对应obj节点的id值,此id值用于定位控件位置
  • visible: (Boolean)可选 分享控件是否创建后立即显示,默认值为true

返回值:

: 分享控件对象

load

加载分享授权页面


void obj.load(id);
                        

说明:

创建分享授权页面后,需要调用此方法指定分享服务标识来加载授权页面数据,此标识可使用ShareService对象的id属性。

参数:

  • id: (DOMString)必选 要加载的分享服务标识

返回值:

void: 无

setVisible

设置分享授权控件是否可见


void obj.setVisible(visible);
                        

创建分享授权页面后,调用此方法设置分享授权控件在页面中是否可见。

参数:

  • visible: (Boolean)必选 要设置分享控件是否可见,true标识可见,false表示不可见。

返回值:

void: 无

onloaded

分享控件加载完成事件

说明:

EventHandler类型

分享授权控件内容加载完成事件,通过调用load方法加载分享授权控件内容,当内容加载完成时触发。

onauthenticated

分享授权认证成功事件


void obj.onauthenticated = function(service){
    // Authenticate success code 
}
                        

说明:

类型

用户在分享授权控件上输入操作授权成功时触发,事件方法格式参考ShareSuccessCallback回调函数。

onerror


void obj.onerror = function(error) {
    // Error code 
}
                        

说明:

ShareErrorCallback类型

用户在分享授权控件上输入操作授权认证错误时触发,事件方法格式参考ShareErrorCallback回调函数。

GeoPosition

JSON对象,用户位置信息


interface plus.share.GeoPosition {
    attribute Number latitude;
    attribute Number longitude;
}
                

说明:

GeoPosition对象用于表示用户分享消息时的位置信息。用于标识分享操作时用户的位置信息。

属性:

  • latitude: (Number类型)用户位置的纬度坐标信息
  • longitude: (Number类型)用户位置的经度坐标信息

ShareService

分享服务对象


interface plus.share.ShareService {
    // Attributes
    attribute DOMString id;
    attribute DOMString description;
    attribute Boolean authenticated;
    attribute DOMString accessToken;
    attribute Boolean nativeClient;

    // Methods
    function void authorize(successCallback, errorCallback, options);
    function void forbid();
    function void send(message);
    function void launchMiniProgram(options);
}
                

说明:

ShareService对象用于表示分享服务,在JS中为对象,用于向系统请求分享操作。

属性:

  • : 分享服务标识
  • description: 分享服务描述
  • : 是否授权认证
  • accessToken: 授权认证信息
  • : 是否存在对应的分享客户端

方法:

  • authorize: 授权认证操作
  • : 取消授权认证
  • send: 发送分享
  • : 调用微信小程序

id

分享服务标识

说明:

ShareServerIdentity类型 只读属性

用于表示分享服务标识:"sinaweibo" - 表示新浪微博;"tencentweibo" - 表示腾讯微博;"weixin" - 表示微信;"qq" - 表示腾讯QQ。

description

分享服务描述

说明:

DOMString类型 只读属性

用于描述分享服务的信息:如“新浪微博”、“腾讯微博”、“微信”、“QQ”。

authenticated

是否授权认证

说明:

Boolean类型 只读属性

用于标识此分享是否已经授权认证过,true表示已完成授权认证;false表示未完成授权认证。

accessToken

授权认证信息

说明:

DOMString类型 只读属性

仅在authenticated为true时有效,标识客户认证标识信息,用于发送分享信息。

nativeClient

是否存在对应的分享客户端

说明:

Boolean类型 只读属性

对于某些分享服务,可直接调用本地客户端程序进行授权认证,此属性即可提供此相关信息,若没有安装本地客户端则可能调用其它方式进行分享操作,如WAP方式等。

authorize

授权认证操作



void obj.authorize(successCallback, errorCallback, options);

                        

说明:

对指定的分享服务进行授权认证操作,在授权前可通过ShareService.authenticated属性判断是否已经授权过,通常只需要对没有进行过授权认证的服务进行授权认证操作。授权认证操作成功后通过successCB回调函数通知操作完成,操作失败则通过errorCB回调返回。

参数:

  • successCallback: ()必选 分享服务授权认证成功回调分享服务授权认证操作成功时的回调函数,用于返回分享授权操作成功信息。
  • errorCallback: (ShareErrorCallback)可选 分享服务授权认证失败回调分享服务授权认证操作失败时的回调函数,用于返回错误信息。
  • options: ()可选 分享服务授权认证参数分享服务授权认证操作使用的参数。

返回值:

void: 无

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares = s;
    }, function(e){
        console.log("获取分享服务列表失败:"+e.message);
    } );
}, false);
function shareAction(){
    var s = shares[0];
    if(!s.authenticated){
        s.authorize(functioin(){
            console.log("认证完成!");
        }, function(e){
            console.log("未进行认证");
        } )
    }
}
    </script>
    </head>
    <body>
    </body>
</html>
                        

uni-app使用plus注意事项

forbid

取消授权认证


void obj.forbid();
                        

说明:

对指定的分享服务取消授权认证操作,取消授权认证后,再次分享时需重新进行授权操作。

参数:

返回值:

void: 无

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares = s;
    }, function(e){
        alert("获取分享服务列表失败:"+e.message);
    } );
}, false);
// 取消所有分享服务的
function cancelAuthorize(){
    for(var i in shares){
        var s = shares[i];
        if(s.authenticated){
            s.forbid();
        }
    }
}
    </script>
    </head>
    <body>
    </body>
</html>
                        

send

发送分享


void obj.send(msg, successCB, errorCB);
                        

说明:

发送分享消息,分享消息的内容通过msg设置。发送成功后通过successCB回调函数通知操作完成,发送失败则通过errorCB回调返回。若分享服务没有进行授权认证或授权认证失效则触发失败回调函数。

参数:

  • msg: (ShareMessage)必选 要发送的分享消息对象用于设置要分享的消息内容,如文字内容,图片等信息。
  • successCB: ()必选 发送分享消息成功回调发送分享消息操作成功时的回调函数,用于返回发送分享消息操作成功信息。
  • errorCB: (ShareErrorCallback)可选 发送分享消息失败回调发送分享消息操作失败时的回调函数,用于返回错误信息。

void: 无

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares = s;
    }, function(e){
        alert("获取分享服务列表失败:"+e.message);
    });
}, false);
/**
 * 分享操作
 * @param {plus.share.ShareService} s
 */
function shareAction(s){
    if(!s){
        return;
    }
    if(s.authenticated){
        shareMessage(s);
    }else{
        s.authorize(shareMessage, function(e){
            alert("未进行认证");
        });
    }
}
/**
 * 发送分享消息
 * @param {plus.share.ShareService} s
 */
function shareMessage(s){
    s.send({content:"Hello"}, function(){
        alert("分享成功!");
    },function(e){
        alert("分享失败:"+e.message);
    });
}
    </script>
    </head>
    <body>
        发送分享<br/>
        <button onclick="shareAction(shares[0])">发送分享</button>
    </body>
</html>
                        

launchMiniProgram

调用微信小程序

说明:

参数:

返回值:

void: 无

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null;
var sweixin=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares={};
        for(var i in s){
            var t=s[i];
            shares[t.id]=t;
        }
        sweixin=shares['weixin'];
    }, function(e){
        alert("获取分享服务列表失败:"+e.message);
    });
}, false);
/**
 * 调用微信小程序
 */
function launchMiniProgram(s){
    sweixin?sweixin.launchMiniProgram({
        id:'gh_33446d7f7a26'
    }):plus.nativeUI.alert('当前环境不支持微信操作!');
}
    </script>
    </head>
    <body>
        发送分享<br/>
        <button onclick="launchMiniProgram()">调用微信小程序</button>
    </body>
</html>
                        

ShareServerIdentity

分享服务标识

常量:

  • "sinaweibo": (DOMString类型)新浪微博
  • "tencentweibo": (DOMString类型)腾讯微博
  • "weixin": (DOMString类型)微信

ShareMessage

JSON对象,分享消息对象


interface plus.share.ShareMessage {
    attribute String type;
    attribute String content;
    attribute String[] thumbs;
    attribute String[] pictures;
    attribute String media;
    attribute String href;
    attribute String title;
    attribute JSON extra;
    attribute GEOPosition geo;
    attribute ShareMessageExtra extra;
    attribute WeixinMiniProgramOptions miniProgram;
    attribute String interface;
}
                

说明:

ShareMessage对象用于表示分享消息内容,在JS中为JSON对象,用于向系统发送分享信息操作。

属性:

  • type: (String类型)分享消息的类型微信分享平台,可取值:

    • "web"-分享网页类型,title(必填)、content(必填)、thumbs(必填)、href(网页url,必填)属性值有效;
    • "text"-分享文字类型,content(必填)属性值有效;
    • "image"-分享图片类型,pictures(必填)属性值有效;
    • "music"-分享音乐类型,title(必填)、content(必填)、thumbs(必填)、media(音乐url,必填)属性值有效;
    • "video"-分享视频类型,title(必填)、content(必填)、thumbs(必填)、media(视频url,必填)属性值有效;
    • "miniProgram"-分享小程序类型(仅支持分享到好友),title(必填)、content(必填)、thumbs(图片小于128K,宽高比为5:4,必填)、miniProgram(小程序参数,必填)属性值有效;没有设置type时,如果href值有效则默认值为"web",如果pictures有效则默认值为"image",否则默认值为"text"。新浪微博分享平台,可取值:
    • "web"-分享网页类型,content、href(网页url,必填),分享链接添加到内容之后;
    • "text"-分享文字类型,content(必填)属性有效,可在内容中直接插入链接地址;
    • "image"-分享图片类型,content(可选)、thumbs(可选)、pictures(必填)属性有效;
    • "video"-分享视频类型,content(可选)、thumbs(可选)、media(本地视频文件,必填)属性有效;没有设置type时,如果存在thumbs则默认值为"image",如果存在href则默认值为"web",否则默认为"text"。QQ分享平台,可取值:
    • "text"-分享文字类型,href(iOS可选,Android必填)、title(必填,最长30个字符)、content(可选,最长40个字符)、pictures或thumbs(可选,优先pictures,iOS不支持)属性有效;
    • "image"-分享图片类型,pictures或thumbs(必填,优先pictures)属性有效;
    • "music"-分享音乐类型,title(必填,最长30个字符)、content(可选,最长40个字符)、href(必填)、media(音乐url,必填)、pictures或thumbs(可选,优先pictures)属性值有效;没有设置type时,默认值"text"。
  • content: (String类型)分享消息的文字内容
  • pictures: (Array[String]类型)分享消息的图片分享消息中包含的图片路径,仅支持本地路径。若分享平台仅支持提交一张图片,传入多张图片则仅提交第一张图片。如果未指定type类型,优先级顺序为:pictures>content(即设置了pictures则认为分享图片类型)。

  • thumbs: (Array[Stromg]类型)分享消息的缩略图分享消息中包含的缩略图路径,支持本地路径及网络路径。若分享平台仅支持提交一张图片,传入多张图片则仅提交第一张图片。如果分享平台的信息不支持缩略图,若没有设置消息的图片(pictures)则使用缩略图,否则忽略其属性值。注意:图片有大小限制,推荐图片小于20Kb。

  • media: (Strubg类型)分享的多媒体资源分享的多媒体资源地址,当type值为"music"、"video"时有效。注意:微信分享平台支持音乐、视频类型,仅支持网络地址(以http://或https://开头);QQ分享平台支持音乐类型,仅支持网络路径(以http://或https://开头);新浪微博分享平台支持视频类型,仅支持本地文件路径。

  • href: (String类型)分享独立的链接分享资源地址,仅支持网络地址(以


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>Share Example</title>
    <script type="text/javascript">
var shares=null,sharewx=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(s){
        shares = s;
        for(var i in s){
            if('weixin'==s[i].id){
                sharewx=s[i];
            }
        }
    }, function(e){
        alert( "获取分享服务列表失败:"+e.message );
    });
}, false );
function shareWeixinMessage(){
    sharewx.send( {content:"DCloud HBuilder-做最好的HTML5开发工具",href:"http://www.dcloud.io/",extra:{scene:"WXSceneTimeline"}}, function(){
        alert("分享成功!");
    }, function(e){
        alert("分享失败:"+e.message);
    });
}
    </script>
    </head>
    <body>
        <button onclick="shareWeixinMessage()">分享链接到微信朋友圈</button>
    </body>
</html>
                        
  • title: (String类型)分享消息的标题仅微信分享网页、音频、视频、小程序类型时支持。

  • geo: (GeoPosition类型)分享消息中包含的用户地理信息数据

  • extra: (类型)分享消息扩展参数
  • miniProgram: (WeixinMiniProgramOptions类型)分享微信小程序参数仅微信分享小程序类型时支持。

  • interface: (String类型)分享消息的模式可取值: "auto" - 自动选择,如果已经安装微博客户端则采用编辑界面进行分享,否则采用无界面分享; "slient" - 静默分享,采用无界面模式进行分享; "editable" - 进入编辑界面,用户确认分享内容后发送,如果当前未安装微博客户端则触发错误回调。 默认值为"auto"。 (仅新浪微博分享时生效)

ShareMessageExtra

JSON对象,保存分享消息扩展信息


interface plus.share.ShareMessageExtra {
    attribute String scene;
}
                

说明:

ShareMessageExtra对象用于保存各分享平台扩展的参数,用于自定义分享功能。

属性:

  • scene: (String类型)微信分享场景,仅微信分享平台有效可取值:"WXSceneSession"分享到微信的“我的好友”;"WXSceneTimeline"分享到微信的“朋友圈”中;"WXSceneFavorite"分享到微信的“我的收藏”中。默认值为"WXSceneSession"。

WeixinMiniProgramOptions

JSON对象,微信小程序信息


interface plus.share.WeixinMiniProgramOptions {
    attribute String id;
    attribute String path;
    attribute Nnumber type;
    attribute webUrl;
}
                

说明:

用于配置分享小程序的参数,如小程序标识、页面路径等。注意:分享的小程序需要在微信开放平台关联的开发者账号下,否则会分享失败。

属性:

  • id: (String类型)微信小程序ID注意:是微信小程序的原始ID("g_"开头的字符串)。

  • path: (String类型)微信小程序打开的页面路径

  • type: (Number类型)微信小程序版本类型可取值:0-正式版;1-测试版;2-体验版。默认值为0。

  • webUrl: (String类型)兼容低版本的网页链接

示例:


<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>OAuth Example</title>
    <script type="text/javascript">
var shares=null;
var sweixin=null;
// 监听plusready事件  
document.addEventListener("plusready", function(){
    // 扩展API加载完毕,现在可以正常调用扩展API
    plus.share.getServices(function(services){
        shares = services;
        sweixin=shares['weixin'];
    }, function(e){
        alert("获取分享服务列表失败:"+e.message+" - "+e.code);
    });
}, false );
// 发送分享
function doShare(srv, msg){
    console.log(JSON.stringify(msg));
    srv.send(msg, function(){
        console.log('分享到"'+srv.description+'"成功!');
    }, function(e){
        console.log('分享到"'+srv.description+'"失败: '+JSON.stringify(e));
    });
}
// 分享小程序
function shareMiniProgram(){
    if(!sweixin){
        plus.nativeUI.alert('当前环境不支持微信分享操作!');
    }
    var msg={type:'miniProgram',title:'分享小程序标题',thumbs:['_www/mp.png']};
    msg.content = '分享小程序描述内容。';
    msg.miniProgram={id:'g_XXXXXXX',    // 小程序的原始标识
    webUrl:'http://www.dcloud.io/'};
    // 发送分享
    if(sweixin.authenticated){
        doShare(sweixin, msg);
    }else{
        sweixin.authorize(function(){
            doShare(sweixin, msg);
        }, function(e){
            console.log('认证授权失败:'+JSON.stringify(e));
        });
    }
}
    </script>
    </head>
    <body>
        <button onclick="shareMiniProgram()">分享小程序</button>
    </body>
</html>
                

ServicesSuccessCallback

获取分享服务成功回调


void ServicesSuccessCallback(services){
    // Get share services success code
}
                

说明:

当获取分享服务列表成功时的回调函数,用于返回终端支持的分享服务列表。

参数:

  • services: (Array[ShareService])必选 数组,运行环境支持的分享服务列表运行环境支持的分享服务列表数组,可通过services.length获取分享服务列表的数目。

返回值:

void: 无

AuthorizeSuccessCallback

分享授权认证成功回调


void AuthorizeSuccessCallback(services){
      // Authorize success code
}
                

说明:

分享服务授权认证操作成功时调用。

参数:

返回值:

void: 无

ShareSuccessCallback

分享操作成功回调


void ShareSuccessCallback(){
    // Share success code
}
                

说明:

分享操作成功回调函数,当分享操作成功时调用。

参数:

返回值:

void: 无

ShareErrorCallback

分享操作失败回调


void ShareErrorCallback(error){
    // Error 
    var code = error.code;             // 错误编码
    var message = error.message;    // 错误描述信息
}
                

说明:

参数:

  • error: (DOMException)必选 分享操作失败错误信息可通过error.code(Number类型)获取错误编码;可通过error.message(String类型)获取错误描述信息。

返回值:

void: 无