1、打开app项目的manifest.json的文件,选择模块权限配置,将Share(分享)模块添加至已选模块

2、选择SDK配置,在plus.share·分享中,勾选□ 微信消息及朋友圈,配置好appidappsecret值(appid/appsecret可以在微信开发者平台创建应用获取)

3、项目JS文件中的微信支付代码如下(基于angular开发):

$scope.inviteFrendShareFn = function() { //分享方法
if($scope.userLoginFlag){
shareHref()
}else{
$state.go('sign');
}
};
var shares = null;
function plusReady() {
updateSerivces();
if (plus.os.name == "Android") { //安卓系统处理
main = plus.android.runtimeMainActivity();
Intent = plus.android.importClass("android.content.Intent");
File = plus.android.importClass("java.io.File");
Uri = plus.android.importClass("android.net.Uri")
}
}
if (window.plus) {
plusReady()
} else {
document.addEventListener("plusready", plusReady, false)
}
function updateSerivces() { //获取分享服务
plus.share.getServices(function(s) {
shares = {};
for (var i in s) {
var t = s[i];
shares[t.id] = t
}
},
function(e) {
alert("获取分享服务列表失败:" + e.message)
})
}
function shareAction(sb, bh) { //分享方法
var int; //分享链接
$http.post(url + "/xxxx", {}).success(function(data) {
console.log("/xxxx:"+JSON.stringify(data));
int = url + `/index.html#/shareView?userKey=${data.data.user_key}&invitePhone=${data.data.phone}`;
console.log("shareUrl:"+int);
$scope.wxshareUrl = int;
if (!sb || !sb.s) {
alert("无效的分享服务!");
return
}
var msg = {
content: "这是分享内容",
extra: {
scene: sb.x
}
};
if (bh) {
msg.href = int;
msg.title = '这是分享标题';
msg.content = "这是分享内容";
msg.thumbs = ["这里放分享显示的应用图标链接"]; //http://xxx.xxx/logo.gif
msg.pictures = ["这里放分享显示的应用图标链接"] //http://xxx.xxx/logo.gif
}
if (sb.s.authenticated) {
shareMessage(msg, sb.s)
} else {
sb.s.authorize(function() {
shareMessage(msg, sb.s)
},
function(e) {})
}
})
}
function shareMessage(msg, s) { //分享回调
s.send(msg,
function() {
$ionicPopup.alert({
title: '提示',
template: "分享到\"" + s.description + "\"成功! ",
okText: '确定'
})
},
function(e) {
$ionicPopup.alert({
title: '提示',
template: "分享到\"" + s.description + "\"失败! ",
okText: '确定'
})
})
}
function shareHref() { //分享按钮
var shareBts = [];
var ss = shares['weixin'];
ss && ss.nativeClient && (shareBts.push({
title: '微信朋友圈',
s: ss,
x: 'WXSceneTimeline'
}), shareBts.push({
title: '微信好友',
s: ss,
x: 'WXSceneSession'
}));
shareBts.length > 0 ? plus.nativeUI.actionSheet({
cancel: '取消',
buttons: shareBts
},
function(e) {
e.index > 0 && shareAction(shareBts[e.index - 1], true)
}) : plus.nativeUI.alert('当前环境无法支持分享链接操作!')
}

ps:HTML5+参考文档

基于h5+的微信分享,hbuilder打包的更多相关文章

  1. 基于H5的微信支付开发详解

    这次总结一下用户在微信内打开网页时,可以调用微信支付完成下单功能的模块开发,也就是在微信内的H5页面通过jsApi接口实现支付功能.当然了,微信官网上的微信支付开发文档也讲解的很详细,并且有实现代码可 ...

  2. ****基于H5的微信支付开发详解[转]

    这次总结一下用户在微信内打开网页时,可以调用微信支付完成下单功能的模块开发,也就是在微信内的H5页面通过jsApi接口实现支付功能.当然了,微信官网上的微信支付开发文档也讲解的很详细,并且有实现代码可 ...

  3. ***PHP基于H5的微信支付开发详解(CI框架)

    这次总结一下用户在微信内打开网页时,可以调用微信支付完成下单功能的模块开发,也就是在微信内的H5页面通过jsApi接口实现支付功能.当然了,微信官网上的微信支付开发文档也讲解的很详细,并且有实现代码可 ...

  4. H5页面微信分享和手Q分享设置

    RT: 一. 手Q分享: 如下代码所示:设置好 description,name,image,即可,唯一注意的是image最好是200*200,要不然过小不美观,过大加载太慢 <head> ...

  5. springboot 基于JS-SDK实现微信分享(一)

    本文主要介绍了SpringBoot 基于JS-SDK实现自定义微信分享,并通过本地测试的方式进行调试,文中通过微信实现分享流程及示例代码进行非常详细的介绍,希望本文对开发爱好者学习或者工作具有一定的参 ...

  6. 基于h5+的微信登录,hbuilder打包

    1.打开app项目的manifest.json的文件,选择模块权限配置,将OAuth(登录鉴权)模块添加至已选模块中 2.选择SDK配置,在plus.oauuth·登录鉴权中,勾选□ 微信登录,配置好 ...

  7. 基于h5+的微信支付,hbuilder打包

    1.打开app项目的manifest.json的文件,选择模块权限配置,将Payment(支付)模块添加至已选模块中 2.选择SDK配置,在plus.payment·支付中,勾选□ 微信支付,配置好a ...

  8. 微信开发(一)基于Wx-java的微信分享功能

    最近在做微信服务号开发,简单总结一下,便于自己学习积累和分享给大家: 环境介绍: Spring+ Spring MVC +Mybatis 开发语言: JAVA 微信公众平台的开发中,微信只公布了一个基 ...

  9. H5外包团队 技术分享 基于H5+的项目分享

    项目截图:             有H5项目需求欢迎联系我们 我们提供免费的项目评估报价 QQ:372900288 WX:Liuxiang0884

随机推荐

  1. 高级UI-自定义控件

    自定义控件在Android开发中有着大量的运用,为了做出符合项目的效果很多时候需要自定义控件,这里就使用两个自定义控件,来说明自定义控件的使用流程 仿QQ侧滑 之前使用DrawerLayout和Nav ...

  2. jquery on绑定事件叠加解决方法

    jquery on绑定事件叠加解决方法 代码如下 <pre> $('.maoqiu').each(function () { var is_bind = $(this).attr('is_ ...

  3. handy网络库源码阅读

    简洁易用的C++11网络库,From:https://github.com/yedf/handy 在整理过去的资料过程中,发现过去有关注过这一个网络库,简单看了一下属于轻量级的实现,因此本文将对该库进 ...

  4. SpringBoot(1)

    SpringBoot 8/2 CRUD 发送put请求修改数据有三个步骤: SpringMVC中配置HiddenHttpMethodFilter 页面上创建一个post请求(form标签只能写get和 ...

  5. Python字符串的截取原理,下标的位置图示

    Python字符串截取时总是有些糊涂,从官网上找到一个图示,理解Python字符串是如何标记,的具体含义图示如下: +---+---+---+---+---+---+ | P | y | t | h ...

  6. [高清] Excel函数速记手册

    ------ 郑重声明 --------- 资源来自网络,纯粹共享交流, 如果喜欢,请您务必支持正版!! --------------------------------------------- 下 ...

  7. SpringBoot指定额外需要扫描的包

    我们都知道,SpringBoot主启动类标注了@SpringBootApplication注解,该注解引入了@ComponentScan注解 所以默认的包扫描规则是,程序会自动扫描主启动类所在包及其子 ...

  8. 深度优先搜索(DFS)思路及算法分析

    1.算法用途: 用于遍历图中的节点,有些类似于树的深度优先遍历.这里唯一的问题是,与树不同,图形可能包含循环,因此我们可能会再次来到同一节点. 2.主要思想: 借用一个邻接表和布尔类型数组(判断一个点 ...

  9. 论文笔记 XGBoost: A Scalable Tree Boosting System

    XGBoost是boosting算法的其中一种.Boosting算法的思想是将许多弱分类器集成在一起形成一个强分类器,其更关注与降低基模型的偏差.XGBoost是一种提升树模型(Gradient bo ...

  10. centos7.5 离线安装ntp服务

    安装 #检查rpm包 rpm -qa | grep ntp #从https://pkgs.org/download/ntp 下载rpm包 ntp-4.2.6p5-28.el7.centos.x86_6 ...