美文网首页
H5公共js--pubstatic(二次分享,客户端联调方法)

H5公共js--pubstatic(二次分享,客户端联调方法)

作者: 墩儿 | 来源:发表于2017-11-10 14:43 被阅读0次
文件层级结构.png

码云地址: https://gitee.com/winnicat/pubstatic

_share.js


微信朋友圈,微信好友,QQ,QZone二次分享方法封装

方法调用

引用

<script src="_share.js"></script> 

调用

//初始化
var newShare = new initShareMsg({
  /*参数说明*/
  /** "title": String, 不可空                        "标题",
    "summary": String, 可空,默认显示分享地址           "摘要",
    "shareUrl": String, 可空,默认取当前URL            "分享地址",
    "shareImage": String 可空, 显示默认图             "分享图片",
    "defaultImage": String 不可空,默认分享图           "默认分享图"
  **/
});

//执行
//data: [object] 微信权限验证配置信息, 若不在微信传播,可忽略
newShare.setConfig(data);

建议

建议在公共js二次封装该方法,_share.js动态载入。

_peach.js


与客户端约定互调方法,包括登录、图片浏览、视频播放、VR播放、读新闻、跳转URL、修改字号、评论、共享数据等。

全局对象

//存放所有相关方法
window.peach = {
  debug: false   //打开时不会调用客户端方法
}
//存放客户端方法
window.xyJSBridge = {};
//存放web页方法
window.xyJSBridgeIn = {};

方法说明

//新增约定方法的回调
function setFn(callbackFn, oriName, useName){
    /**参数说明
      * callbackFn:  Object 回调函数钩子
      * oriName:     String   客户端回调函数名
      * useName:    String   回调函数名
      **/
}

登录

peach.login   |   Function

登录:window.xyJSBridge.login();
登录成功回调: window.xyJSBridgeIn.loginSuccess(JSON);
登录取消回调: widnow.xyJSBridgeIn.loginCancel();

peach.login({
    /**参数说明
      *success:function(JSON){}  Function  登录成功回调
      *cancel:                   Function  取消登录回调
      **/
})

登录状态

peach.islogin   |   Function

peach.islogin({
    /**参数说明
      *callback: function(JSON)  Function 判断是否登录回调函数,已登录返回登录用户信息,未登录返回空
      **/
})
分享

peach.share   |   Constructed Function
分享:window.xyJSBridge.share(JSON);
分享成功回调: window.xyJSBridgeIn.shareSuccess();
分享取消回调: window.xyJSBridgeIn.shareChannel();
检验:window.xyJSBridge.check(JSON);
检验完成回调: window.xyJSBridgeIn.checkResult(JSON);

var newShare = peach.share({
/** 参数说明
  *success: Function 分享成功回调
  *cancel: Function 分享取消回调
  *result: Function 检验完成回调
  **/
})

提供2个原型方法

  1. 分享到某应用
    newShare.share | Function
newShare.share({
       title:    String,    分享标题
       desc:     String,    分享描述
       link:     String,    分享地址
       image:    String,    分享图片
       platName: String, 分享目标应用
})
  1. 检验设备有无安装目标应用
    newShare.check | Function
newShare.check({
  arrPlat: Array  //例['facebook','twitter','wechat','microblog']
})
图集预览

peach.image   |   Function

peach.image({
  /** 参数说明
    * current: String  当前图片地址
    * urls:    Array   所有图片地址合集
    **/
})

普通视频播放器

peach.video   |   Function

peach.video({
  /** 参数说明
    * url: String 视频播放地址
    * x:   Number 距离webview左边距
    * y:   Number 距离webview右边距
    * w:   Number 播放器窗口宽度
    * h:   Number 播放器窗口高度
})

VR视频播放器

peach.vr   |   Function

peach.video({
  /** 参数说明
    * url: String vr视频播放地址
    * x:   Number 距离webview左边距
    * y:   Number 距离webview右边距
    * w:   Number 播放器窗口宽度
    * h:   Number 播放器窗口高度
    **/
})

打开新的webView

peach.url   |   Function

peach.url({
/** 参数说明
  *title: String 标题
  *url:   String 地址
  *type:  ???
  **/
})

评论

peach.comment

var newComment = new peach.comment({
/**参数说明
   *success: Function  评论成功回调
   *fail:    Function  评论失败回调  
});

提供两个原型方法

  1. 打开评论列表页
    newComment.list   |   Function
newComment.list(id: String|Number  新闻id){}
  1. 评论回复
    newComment.reply   |   Function
newCommnet.reply({
/** 参数说明
  * id:          String | Number  评论id
  * replyUserId: String           被回复者的id
  * replyName:   String           被回复者的昵称
  **/
})

新华社v500联调方法 | utils.js

基于项目的方法

跳转客户端记者个人主页
//reporterid: 记者id
//H5
openReporter(reporterid);
//APP
window.xyJSBridge.theReporterHome(reporterid);
跳转客户端订阅账号主页
//columnid: 栏目id
//H5
openSubscribe(columnid);
//APP
window.xyJSBridge.theSubscribe(columnid);

相关文章

网友评论

      本文标题:H5公共js--pubstatic(二次分享,客户端联调方法)

      本文链接:https://www.haomeiwen.com/subject/ftybmxtx.html