微信 WebView JS 接口封装类,用来替代 WeixinJSBridge 超级难用的接口。
- 分享到微信朋友圈、微信好友或腾讯微博
- 调用微信客户端的图片播放组件
- 获取当前的网络状态
- 隐藏/显示右上角的菜单入口
- 隐藏/显示底部浏览器工具栏
- 关闭当前WebView页面
微信扫描下面二维码查看例子:
WeixinAPI 初始化,是后续所有 WeixinAPI 操作的起始,调用方法:
var wxData = {
'appId': '', // 服务号可以填写appId,没有则留空
'imgUrl': '', // 分享显示的图标
'link': 'http://maxzhang.github.io', // 分享链接
'title': '大家好,我是炎燎(maxzhang)', // 分享标题
'desc': '大家好,我是炎燎(maxzhang)' // 分享内容
};
WeixinAPI.ready(wxData);
你可以在ready
动作之后的任何时候更改wxData
对象,比如:
wxData.link = 'http://www.75team.com';
支持的事件名称:
ready
准备分享cancel
取消分享ok
分享成功fail
分享失败complete
分享结束
默认事件监听应用到全局,不伦哪个分享渠道都会执行毁掉。调用方法:
WeixinAPI.on('ok', function() { alert('share success!'); });
WeixinAPI.on('fail', function() { alert('share failure!'); });
注:最新版本微信已经不再区分分享动作,分享只响应统一的"general_share"动作,以下接口只有在微信5.4以下版本才有效
除此之外,你还可监听特定动作的事件,支持:
timeline
朋友圈appmessage
微信朋友weibo
腾讯微博
调用方法:
WeixinAPI.on('timeline:ok', function() { alert('share timeline success!'); });
WeixinAPI.on('timeline:fail', function() { alert('share timeline failure!'); });
调用方法:
function callback() {}
WeixinAPI.on('ok', callback);
WeixinAPI.off('ok', callback); // 取消监听
也可以一次性移除所有监听,调用方法:
WeixinAPI.off('ok');
调用方法:
// 需要播放的图片url列表
var urls = ['url1', 'url1', ..., 'urlN'];
// 选一个作为当前展示的图片url
var current = 'url';
WeixinAPI.imagePreview(current, urls);
Network 类型取值:
network_type:wifi
wifi网络network_type:edge
非wifi,包含3G/2Gnetwork_type:fail
网络断开连接network_type:wwan
2g或者3gunknow
未知网络
调用方法:
// 同步调用,30秒同步一次 WeixinJSBridge 返回的网络状态,所以会有误差
var networkType = WeixinAPI.getNetworkType();
// 异步调用,能获取精确的网络状态
WeixinAPI.getNetworkType(function(networkType) {
alert(networkType);
});
调用方法:
WeixinAPI.showOptionMenu();
WeixinAPI.hideOptionMenu();
调用方法:
WeixinAPI.showToolbar();
WeixinAPI.hideToolbar();
调用方法:
WeixinAPI.closeWindow();