本文主要是介绍PhoneGap/Cordova微信分享插件【升级版】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
安装:
1 | cordova plugin add https: //git.oschina.net/jiusem/WechatShare-for-PhoneGap.git |
安装成功后,需要将插件目录中的 wxapi 文件夹 移动 到你的 主包 中,这是微信官方的要求,wxapi 文件夹的作用是接受来自微信的回传信息。
移动文件夹后,java文件会出现一个报错,将第一行的包名修改为你自己的主包名即可。
还需要做的工作是打开WechatShare.java文件,大约在58行处,将appID修改为你自己在微信开放平台申请到的。
至此,准备工作就绪,可以使用插件了。
与所有插件一样,你应当在deviceready事件后调用插件,像这样:
1 2 3 | document.addEventListener( 'deviceready' , function (){ //调用插件 }, false ); |
首先来看看如何分享网页到微信,我想这是我们最常见的应用了:
1 2 3 4 5 6 7 8 9 10 | var args = { type: 'webpage' , url: 'http://www.baidu.com' , imgUrl: 'https://www.baidu.com/img/bdlogo.png' , title: '文章标题' , desc: '文章简介' , isSendToTimeline: true //true表示分享到朋友圈,false分享给好友 }; navigator.WechatShare.send(args); |
分享文字:
1 2 3 4 5 6 7 | var args = { type: 'text' , text: '需要分享的文字' , isSendToTimeline: true //true表示分享到朋友圈,false分享给好友 }; navigator.WechatShare.send(args); |
分享图片:
1 2 3 4 5 6 7 8 | var args = { type: 'image' , imageType: 'path' , //也可以使用 'url' 分享图片. data: '/test.png' , //SD card 路径 or url isSendToTimeline: true }; navigator.WechatShare.send(args); |
分享音乐:
1 2 3 4 5 6 7 8 9 10 11 | var args = { type: 'music' , url: 'http://x.x.x/test.mp3' , title: 'title' , desc: 'desc' , isLowBand: true , // 是否使用低音质 imgUrl: '' , //图片路径 isSendToTimeline: true }; navigator.WechatShare.send(args); |
分享视频:
1 2 3 4 5 6 7 8 9 10 11 | var args = { type: 'video' , url: 'http://x.x.x.swf' , title: 'title' , desc: 'desc' , isLowBand: true , imgUrl: 'http://www.baidu.com/img/bdlogo.gif' , isSendToTimeline: true }; navigator.WechatShare.send(args); |
分享文件:
1 2 3 4 5 6 7 8 9 10 | var args = { type: 'file' , path: 'file:///test.mp3' ,//file 's fullPath desc: ' 我在发本地文件 ', title: ' 文件 ', imgUrl: ' http: //www.baidu.com/img/bdlogo.gif', isSendToTimeline: true }; navigator.WechatShare.send(args); |
如果需要处理微信分享的结果,判断分享是否成功,可以定义一个回调函数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | navigator.WechatShare.sendCallBack = function (result){ switch (result){ case 1: //分享成功 //...编写你的业务逻辑 break ; case 2: //取消分享 //... break ; case 3: //验证失败 //... break ; case 4: //未知错误 //... break ; } } |
在git中,我提供了一个完整的Android分享示例,在example文件中:
https://git.oschina.net/jiusem/WechatShare-for-PhoneGap.git
里面包含keystore文件,可以用来调试;在bin文件夹中有一个生成的apk文件,可以安装到手机上来测试。
可能的问题:有些网友反映将项目导入Eclipse后运行,不能调起微信。这是因为微信有校验签名的流程,请参考微信分享相关文档对签名的说明。
插件暂时仅支持Android,iOS版本也会尽快加上。这篇关于PhoneGap/Cordova微信分享插件【升级版】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!