PhoneGap/Cordova微信分享插件【升级版】

2024-02-26 07:58

本文主要是介绍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微信分享插件【升级版】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/748164

相关文章

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

OpenCV在Java中的完整集成指南分享

《OpenCV在Java中的完整集成指南分享》本文详解了在Java中集成OpenCV的方法,涵盖jar包导入、dll配置、JNI路径设置及跨平台兼容性处理,提供了图像处理、特征检测、实时视频分析等应用... 目录1. OpenCV简介与应用领域1.1 OpenCV的诞生与发展1.2 OpenCV的应用领域2

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具