h5+ 开发微信、QQ分享功能

此处只做微信网页分享示例代码

 

方式一、JS+HTML+h5Plus

1.html代码

<div class="button" onclick="shareWeb()">分享网页</div>

2.JS代码

var shares=null;
var sweixin=null;
var buttons=[
{title:\’我的好友\’,extra:{scene:\’WXSceneSession\’}},
{title:\’朋友圈\’,extra:{scene:\’WXSceneTimeline\’}},
{title:\’我的收藏\’,extra:{scene:\’WXSceneFavorite\’}}
];

// H5 plus事件处理
function plusReady(){
  updateSerivces();
}
if(window.plus){
  plusReady();
}else{
  document.addEventListener(\’plusready\’, plusReady, false);
}

/**
*1. 更新分享服务

* 根据授权,通过getServices方法获取分享服务

*/

function updateSerivces(){
    plus.share.getServices(function(s){
        shares={};
        for(var i in s){
            var t=s[i];
            shares[t.id]=t;
        }
    sweixin=shares[\'weixin\'];
    }, function(e){
        outSet(\'获取分享服务列表失败:\'+e.message);
    });
}
/*
2.
*/
// 分享网页
function shareWeb(){
  var msg={
    type:\'web\',
    thumbs:[\'_www/logo.png\'],
    href:\'分享网页的链接\',
    title:\'分享网页的标题\',
    content:\'分享网页的描述\'
  };

  sweixin?plus.nativeUI.actionSheet({title:\'分享网页到微信\',cancel:\'取消\',buttons:buttons}, function(e){
    (e.index>0)&&share(sweixin, msg, buttons[e.index-1]);
  }):plus.nativeUI.alert(\'当前环境不支持微信分享操作!\'); 
}
//

//3.分享

function share(srv, msg, button){
  outSet(\’分享操作:\’);
  if(!srv){
    outLine(\’无效的分享服务!\’);
    return;
  }
  button&&(msg.extra=button.extra);
  // 发送分享
  if(srv.authenticated){
    
    doShare(srv, msg);
  }else{
    srv.authorize(function(){
      doShare(srv, msg);
    }, function(e){
  
});

//4. 发送分享

function doShare(srv, msg){
  outLine(JSON.stringify(msg));
  srv.send(msg, function(){
    outLine(\’分享到”\’+srv.description+\'”成功!\’);
  }, function(e){
    outLine(\’分享到”\’+srv.description+\'”失败: \’+JSON.stringify(e));
  });
}

 

 

 

 

Tip:时间仓促,先写这么多吧。详细注解后期会补上

版权声明:本文为ts119原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ts119/p/12943787.html