• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Java > Java微信公众平台开发(15) 微信JSSDK的使用

Java微信公众平台开发(15) 微信JSSDK的使用

作者:dapengniao 字体:[增加 减小] 来源:互联网 时间:2017-05-28

dapengniao 通过本文主要向大家介绍了微信公众平台jssdk,微信公众号jssdk,微信公众jssdk,java微信公众平台开发,java微信公众平台等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

在前面的文章中有介绍到我们在微信web开发过程中常常用到的 【微信JSSDK中Config配置】 ,但是我们在真正的使用中我们不仅仅只是为了配置Config而已,而是要在我们的项目中真正去使用微信JS-SDK给我们带来便捷,那么这里我们就简述如何在微信web开发中使用必要的方法!微信的JS-SDk中为我们提供的方法很多,这里我有一个简单截图如下:

在上图的提供的所有口中我们可以按照接口实现的难易程度分成两个部分:

较易实现:基础接口、分享接口、设备信息接口、地理位置接口、界面操作接口、微信扫一扫接口;
较难实现:图像接口、音频接口、智能接口、微信小店接口、微信卡券接口、微信支付接口;(注:这里说较难是因为需要后端和本地文件配合接口,这些接口后面会一篇篇文章具体详解)
在这里我们将讲述所有较易实现的接口的具体实现方法,在文章中讲述过了如何配置和引入需要的js,通过这些配置之后我们就可以开始使用js的方法了!

①基础接口-判断当前浏览器是否支持某些js接口

注意:
所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。

wx.ready(function () {
 //1. 判断当前版本是否支持指定 JS 接口,支持批量判断,只需要将需要判断的接口放入到jsApiList中即可
 checkJsApifunction () {
 wx.checkJsApi({
  jsApiList: [
  'getNetworkType',
  'previewImage'
  ],
  success: function (res) {
  alert(JSON.stringify(res));
  }
 });
 };
</div>

②分享接口,这里包含:分享给朋友、分享到朋友圈、分享到qq、分享到微博、分享到qq空间(但是这里要提醒要注意不要有诱导分享等违规行为,对于诱导分享行为将永久回收公众号接口权限)

 // 2. 分享接口
 // 2.1 监听“分享给朋友”,按钮点击、自定义分享内容及分享结果接口
 onMenuShareAppMessagefunction () {
 wx.onMenuShareAppMessage({
  title: '菜鸟程序员成长之路!',
  desc: '关注java平台开发,前后端框架技术,分享前后端开发资源,服务端教程技术,菜鸟程序员!',
  link: 'http://www.cuiyongzhi.com/',
  imgUrl: 'http://res.cuiyongzhi.com/2016/03/201603201591_339.png',
  trigger: function (res) {
  // 不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回
  alert('用户点击发送给朋友');
  },
  success: function (res) {
  alert('已分享');
  },
  cancel: function (res) {
  alert('已取消');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 alert('已注册获取“发送给朋友”状态事件');
 };
 
 // 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
 onMenuShareTimelinefunction () {
 wx.onMenuShareTimeline({
  title: '菜鸟程序员成长之路!',
  link: 'http://www.cuiyongzhi.com/',
  imgUrl: 'http://res.cuiyongzhi.com/2016/03/201603201591_339.png',
  trigger: function (res) {
  // 不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回
  alert('用户点击分享到朋友圈');
  },
  success: function (res) {
  alert('已分享');
  },
  cancel: function (res) {
  alert('已取消');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 alert('已注册获取“分享到朋友圈”状态事件');
 };
 
 // 2.3 监听“分享到QQ”按钮点击、自定义分享内容及分享结果接口
 onMenuShareQQfunction () {
 wx.onMenuShareQQ({
  title: '菜鸟程序员成长之路!',
  desc: '关注java平台开发,前后端框架技术,分享前后端开发资源,服务端教程技术,菜鸟程序员!',
  link: 'http://www.cuiyongzhi.com/',
  imgUrl: 'http://res.cuiyongzhi.com/2016/03/201603201591_339.png',
  trigger: function (res) {
  alert('用户点击分享到QQ');
  },
  complete: function (res) {
  alert(JSON.stringify(res));
  },
  success: function (res) {
  alert('已分享');
  },
  cancel: function (res) {
  alert('已取消');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 alert('已注册获取“分享到 QQ”状态事件');
 };
 
 // 2.4 监听“分享到微博”按钮点击、自定义分享内容及分享结果接口
 onMenuShareWeibofunction () {
 wx.onMenuShareWeibo({
  title: '菜鸟程序员成长之路!',
  desc: '关注java平台开发,前后端框架技术,分享前后端开发资源,服务端教程技术,菜鸟程序员!',
  link: 'http://www.cuiyongzhi.com/',
  imgUrl: 'http://res.cuiyongzhi.com/2016/03/201603201591_339.png',
  trigger: function (res) {
  alert('用户点击分享到微博');
  },
  complete: function (res) {
  alert(JSON.stringify(res));
  },
  success: function (res) {
  alert('已分享');
  },
  cancel: function (res) {
  alert('已取消');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 alert('已注册获取“分享到微博”状态事件');
 };
 
 // 2.5 监听“分享到QZone”按钮点击、自定义分享内容及分享接口
 onMenuShareQZonefunction () {
 wx.onMenuShareQZone({
  title: '菜鸟程序员成长之路!',
  desc: '关注java平台开发,前后端框架技术,分享前后端开发资源,服务端教程技术,菜鸟程序员!',
  link: 'http://www.cuiyongzhi.com/',
  imgUrl: 'http://res.cuiyongzhi.com/2016/03/201603201591_339.png',
  trigger: function (res) {
  alert('用户点击分享到QZone');
  },
  complete: function (res) {
  alert(JSON.stringify(res));
  },
  success: function (res) {
  alert('已分享');
  },
  cancel: function (res) {
  alert('已取消');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 alert('已注册获取“分享到QZone”状态事件');
 };
</div>

③设备信息接口--这里是获取设备网络状态,以防在页面中存在视频或者大流量文件播放的时候对用户给出友好提示!

 // 3 设备信息接口
 // 3.1 获取当前网络状态
 getNetworkTypefunction () {
 wx.getNetworkType({
  success: function (res) {
  alert(res.networkType);
  var networkType = res.networkType; // 返回网络类型2g,3g,4g,wifi
  if(networkType=='3g'){
   alert("您好,您的网络状态是3g网络,这里将播放视频文件会产生大流程!");
  }
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 };
</div>


④地理位置接口,这里包含查看经纬度对应的地图位置和获取当前位置的经纬度,可用做地图位置展示的第一步!

 // 4 地理位置接口
 // 4.1 查看地理位置
 openLocationfunction () {
 wx.openLocation({
  latitude: 23.099994,
  longitude: 113.324520,
  name: 'TIT 创意园',
  address: '广州市海珠区新港中路 397 号',
  scale: 14,
  infoUrl: 'http://weixin.qq.com'
 });
 };
 
 // 4.2 获取当前地理位置
 getLocationfunction () {
 wx.getLocation({
  success: function (res) {
  alert(JSON.stringify(res));
  },
  cancel: function (res) {
  alert('用户拒绝授权获取地理位置');
  }
 });
 };
</div>

⑤界面操作接口,这里说的界面操作其实就是在微信浏览器中操作和改名的那右上角的【三个点】,对这里隐藏的菜单进行操作和关闭微信浏览器!

 // 5 界面操作接口
 // 5.1 隐藏右上角菜单
 hideOptionMenufunction () {
 wx.hideOptionMenu();
 };
 
 // 5.2 显示右上角菜单
 showOptionMenufunction () {
 wx.showOptionMenu();
 };
 
 // 5.3 批量隐藏菜单项
 hideMenuItemsfunction () {
 wx.hideMenuItems({
  menuList: [
  'menuItem:readMode', // 阅读模式
  'menuItem:share:timeline', // 分享到朋友圈
  'menuItem:copyUrl' // 复制链接
  ],
  success: function (res) {
  alert('已隐藏“阅读模式”,“分享到朋友圈”,“复制链接”等按钮');
  },
  fail: function (res) {
  alert(JSON.stringify(res));
  }
 });
 };
 
 // 5.4 批量显示菜单项
 showMenuItemsfunction () {
 wx.showMenuItems({
  menuList: [
  'menuItem:readMode', // 阅读模式
  'menuItem:share:timeline', // 分享到朋友圈
  'menuItem:copyUrl' // 复制链接
  ],
  success: function (res) {
  alert('已显示“阅读模式”,“分享到朋友圈”,“复制链接”等按钮');
  },
  fail: function (res) {
  alert(JSON.stringif



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Java微信公众平台开发(15) 微信JSSDK的使用
  • Java微信公众平台开发(13) 微信JSSDK中Config配置
  • Java微信公众平台开发(15) 微信JSSDK的使用
  • Java微信公众平台开发(13) 微信JSSDK中Config配置

相关文章

  • 2017-05-28java 中volatile和lock原理分析
  • 2017-05-28详解Java中-classpath和路径的使用
  • 2017-05-28JAVA面试题之Forward与Redirect的区别详解
  • 2017-05-28java 关键字super详解及用法
  • 2017-05-28关于Java中的IO流总结(推荐)
  • 2017-07-22全面掌握Java内部类
  • 2017-05-28Java实现的自定义迭代器功能示例
  • 2017-05-28java操作mysql实现增删改查的方法
  • 2017-05-28Java date format时间格式化操作示例
  • 2017-05-28Java Reference源码解析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • java实例方法被覆盖,静态方法被隐藏Explain(详解)
    • java 基础之JavaBean属性命名规范问题
    • Java 加密解密基础分类及模式归纳整理
    • Java数据结构之图(动力节点Java学院整理)
    • java 整型数与Integer的缓存深入理解
    • Java中final,finally,finalize三个关键字的区别_动力节点Java学院整理
    • 详解在SpringBoot应用中获取应用上下文方法
    • 浅析Java 数据结构常用接口与类
    • JDK源码之PriorityQueue解析
    • java读取txt文件代码片段

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有