精华内容
下载资源
问答
  • 请问,bshare和百度分享之类的分享功能,分享完成之后是否有回调功能呢?或者分享之后怎么判断是否分享成功呢? 我是要完成这样的一个场景:分享成功之后增加用户积分,只是点击分享但是没有分享成功是不做处理的。
  • 主要介绍了JS实现微信里判断页面是否分享成功的方法,结合实例形式分析了js调用微信接口判断网页分享功能的相关操作技巧,需要的朋友可以参考下
  • 如何判断百度分享成功回调方法

    千次阅读 2014-03-11 09:41:20
    可百度分享功能分享后怎么样来判断客户分享成功了呢?这对于程序员来说是很头疼的事,因为百度分享根本没有提供相应的API接口供我们使用。 如果能解决百度分享成功回调方法,那给网站的推广打开了另一扇门,可能...

    百度分享推出不到一年我想使用量肯定很大,分享功能给我们带来了很大的方便,也给网站自身的推广营销带来的方便。可百度分享功能分享后怎么样来判断客户分享成功了呢?这对于程序员来说是很头疼的事,因为百度分享根本没有提供相应的API接口供我们使用。

    如果能解决百度分享成功回调方法,那给网站的推广打开了另一扇门,可能通过分享成功与否来对分享的客户作很多线上线下的活动。今天jsctrlc就跟大家来分享一下如何判断百度分享成功回调方法,一般人我不告诉他的。

    如何判断百度分享成功回调方法

    下面就来试一下如何判断百度分享是否成功,首页打开我们要分享的页面http://www.jsctrlc.com/texiao/157.html,在百度分享的右侧有分享数量的显示。百度分享

    上图的分享数量是“2”,那我们只要对这个数量进行判断,只要数量增加了说明分享成功。

    接着打开:http://api.share.baidu.com/getnum?url=http://www.jsctrlc.com/texiao/157.html&callback=bdShare.fn._getShare&type=share百度分享的接口回调网址。

    可以看到返回了如下一段代码:

    bdShare.fn._getShare({"errno":0,"num":[2,"2"]})

    num后面的2就是我们要获得的百度分享成功的数量。下面介绍一下php获得百度分享数量成功回调这个值的简单方法:

    $url='http://api.share.baidu.com/getnum?url=http://www.jsctrlc.com/texiao/157.html&callback=bdShare.fn._getShare&type=share';
    $html=file_get_contents($url);
    echo($html)."<br/>";
    $v=explode(",",$html);
    echo $v[2]."<br/>";
    $v2=$v[2];
    $v3=explode('"',$v2);
    echo $v3[1];

    至于进一步的百度分享功能就看大家的了。

    文章来源:http://www.jsctrlc.com/texiao/302.html

    展开全文
  • 判断微信小程序的转发或分享是否成功是否有回调函数?fail,success,complete咋不执行? 来来来,看看这儿 【GO>>】 或者直接看下面的内容吧,直接粘过来的 “分享监听”能力调整【官】 微信团队 2018-09-...

    想判断微信小程序的转发或分享是否成功?是否有回调函数?fail,success,complete咋不执行?
    别再看其他的什么各种方案,各种代码,各种流程了,都是以前的或抄过来的,不管用,不管用,不管用(重要的事情说三遍)
    来来来,看看这儿 【GO>>

    或者直接看下面的内容吧,直接粘过来的,主要看红色字体包含信息
    “分享监听”能力调整【官】

    微信团队 2018-09-12

    近期我们收到了很多用户对小程序/小游戏中分享功能的投诉:在某些小程序/小游戏中,分享并非是用户主动自发的行为,而是受到了某类利益的诱惑,或是被迫分享。这样的内容充斥在群里、小程序里,对用户造成了骚扰。

    分享功能,旨在帮助用户更流畅地与好友分享内容和服务,应是用户自发的行为。在原来的分享接口中,用户发起分享动作之后,可以通过 success 、fail、complete等回调来判断用户是否完成了最后的分享动作。通过这个能力,开发者可以将产品交互在分享这个能力上做得比较自然和顺畅。现在为鼓励用户自发分享喜爱的内容,减少“强制分享至不同群”等滥用分享能力,破坏用户体验的行为,在我们权衡了分享功能带来的利弊后,分享功能将进行以下调整:

    10月10日起新提交发布的版本,不再支持分享回调参数 success 、fail 、complete,即用户从小程序/小游戏中分享消息给好友时,开发者将无法获知用户是否分享完成,也无法在分享后立即获得分享成功后的回调参数shareTicket。该调整可以在基础库 2.3.0及以上版本体验。

    此次调整可能影响到三种分享功能的用法。

    • 第一种:判断用户是否分享成功,进而给予用户奖励。

    例如:小程序提示用户“分享到5个群,可以获得一张20元的优惠券”。

    这类诱导用户分享的行为是我们平台所不倡导的,后续将没有办法实现。

    • 第二种:分享完成后变更当前的页面状态

    例如:赠送礼品场景下,用户点击“赠送”按钮,将礼品分享出去,分享成功后,界面展示“等待领取”。

    这类场景,我们建议可以适当调整交互方案。例如在分享后继续保留“赠送”按钮,但在页面上提示用户一个礼品只能被一人领取,重复赠送无效。

    • 第三种:通过用户分享之后的 shareTicket 获取群唯一标识 openGId ,以显示对应群的相关信息。

    例如:通过分享小程序到某个群里,可以查看该群内成员的排行榜。

    此次调整后,用户分享完成后无法立刻显示该群的排行榜信息,但仍可在用户从群消息点击进入小程序时显示该群的排行榜信息。

    10月10日起新提交发布的版本将会受到此调整的影响。

    需要各位开发者注意,10月10日起新提交发布的版本将会受到此策略的影响,请及时调整分享相关能力,考虑兼容上述调整带来的影响。

    调整策略在基础库 2.3.0 及以上版本生效,该基础库版本对应微信客户端6.7.2版本。另外,考虑到兼容性等问题,在基础库版本 2.3.0 以下的环境中不受此策略影响,小程序/小游戏可继续获取分享回调事件。

    最后一次编辑于 2018-09-13

    展开全文
  • 微信里如何判断页面被分享成功

    千次阅读 2018-08-13 08:38:00
    有个活动页面需要用户分享成功后给用户一个sn编码用于抽奖,请问微信分享有回调函数吗 A: var shareData = { img_url: "", img_width: 200, img_height: 200, link: '', desc: '', title: '', ...

    Q:

    有个活动页面需要用户分享成功后给用户一个sn编码用于抽奖,请问微信分享有回调函数吗

    A:

    var shareData = {
        img_url: "",
        img_width: 200,
        img_height: 200,
        link: '',
        desc: '',
        title: '',
        appid: 0
    };
    
    document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
        // 发送给好友
        WeixinJSBridge.on('menu:share:appmessage', function(argv){
            shareFriend();
        });
        // 分享到朋友圈
        WeixinJSBridge.on('menu:share:timeline', function(argv){
            shareTimeline();
        }); 
    }, false);
    
    
    function shareTimeline() {
        WeixinJSBridge.invoke('shareTimeline', shareData, function(res) {
            validateShare(res);
            _report('timeline', res.err_msg);
        });
    }
    
    function shareFriend() {
        WeixinJSBridge.invoke('sendAppMessage', shareData, function(res) {
            validateShare(res);
            _report('send_msg', res.err_msg);
        });
    }
    
    function validateShare(res) {
        if(res.err_msg != 'send_app_msg:cancel' && res.err_msg != 'share_timeline:cancel') {
        //分享完毕回调
        }
    }

     

    转载于:https://www.cnblogs.com/kenshinobiy/p/9466148.html

    展开全文
  • 问题: H5经常会做一些从APP或其他地方分享出来的页面,在微信及QQ中会进行二次分享,需要自己定义分享的名字和图片;...首先判断是否是移动端: //判断访问终端 var browser = { versions: function() {
    问题:

    H5经常会做一些从APP或其他地方分享出来的页面,在微信及QQ中会进行二次分享,需要自己定义分享的名字和图片;
    微信的分享再分享在微信公众号文档中有相关说明:微信JS-SDK说明文档

    一、微信分享

    基本条件

    • 步骤一:绑定域名

      • 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
      • 备注:登录后可在“开发者中心”查看对应的接口权限。
    • 步骤二:引入JS文

    <!--微信接口-分享-->
    <script src="https://res.wx.qq.com/open/js/jweixin-1.0.0.js" type="text/javascript"></script>
    
    将生成一个wx对象,所有接口通过wx对象(也可使用jWeixin对象)来调用
    
    • 步骤三:通过config接口注入权限验证配置(后台来完成)
    wx.config({
        debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: '', // 必填,公众号的唯一标识
        timestamp: , // 必填,生成签名的时间戳
        nonceStr: '', // 必填,生成签名的随机串
        signature: '',// 必填,签名
        jsApiList: [] // 必填,需要使用的JS接口列表
    });
    
    • 步骤四:通过ready接口处理成功验证
    wx.ready(function(){
        // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
    });
    
    • 步骤五:通过error接口处理失败验证
    wx.error(function(res){
        // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
    });
    

    具体步骤

    1. 在这里,我做了微信分享的公共函数

    首先判断是否是移动端:

    //判断访问终端
    var browser = {
    	versions: function() {
    		var u = navigator.userAgent,
    			app = navigator.appVersion;
    		return {
    			trident: u.indexOf('Trident') > -1, //IE内核
    			presto: u.indexOf('Presto') > -1, //opera内核
    			webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
    			gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
    			mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
    			ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
    			android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
    			iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
    			iPad: u.indexOf('iPad') > -1, //是否iPad
    			webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
    			weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增)
    			qq: u.match(/\sQQ/i) == "qq", //是否QQ
    			weibo: u.match(/WeiBo/i) == "weibo", //是否微博
    		};
    	}(),
    	language: (navigator.browserLanguage || navigator.language).toLowerCase()
    };
    
    /*=======================================分享Start=======================================*/
    //注释:在这里,getNowTime()是时间戳函数,gObj.parameterObj是调取接口的公共参数对象;调取接口如果不需要就不加
    function shareWX(shareObj){
    	/*微信分享*/
    	var url = encodeURIComponent(location.href.split('#')[0]);
    	gObj.parameterObj.url = url;
    	$.ajax({
    		type: "post",
    		url: "/app/fenzhongkeji/HttpXmlClient/getWeiXin.json?" + getNowTime(),
    		data: gObj.parameterObj,
    		dataType: 'json',
    		success: function(data) {
    			data = data.data;
    			/*微信接口*/
    			var appId = data.appId;
    			var timestamp = data.timestamp;
    			var nonceStr = data.nonceStr;
    			var signature = data.signature;
    			var obj = {
    				debug: false, // 开启调试模式
    				appId: appId, // 必填,公众号的唯一标识
    				timestamp: timestamp, // 必填,生成签名的时间戳
    				nonceStr: nonceStr, // 必填,生成签名的随机串
    				signature: signature, // 必填,签名,见附录1
    				jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone']
    			}
    			/*权限验证配置*/
    			wx.config(obj);
    			if(browser.versions.mobile) { //判断是否是移动设备打开。browser代码在下面
    				var ua = navigator.userAgent.toLowerCase(); //获取判断用的对象
    				if(ua.match(/MicroMessenger/i) == "micromessenger") {
    					wx.ready(function() {
    						WeixinJSBridge.call('showOptionMenu');
    						/*加载完数据,能分享的时候隐藏加载层*/
    						$("#preloader").hide();
    						/*1-分享给朋友*/
    						wx.onMenuShareAppMessage(shareObj);
    						/*2-分享给朋友圈*/
    						wx.onMenuShareTimeline(shareObj);
    						/*3-分享到QQ好友*/
    						wx.onMenuShareQQ(shareObj);
    						/*4-分享到QQ空间*/
    						wx.onMenuShareQZone(shareObj);
    						/*5-分享到腾讯微博*/
    						wx.onMenuShareWeibo(shareObj);
    					});
    					wx.error(function(res) {});
    				} else {
    					/*加载完数据,能分享的时候隐藏加载层*/
    					$("#preloader").hide();
    				}
    			} else {
    				$("#preloader").hide();
    			}
    		}
    	});
    }
    /*=======================================分享End=======================================*/
    
    2. 调用微信分享的函数
    /*微信分享*/
    var shareName = '分享标题';
    var shareDesc= '分享描述';
    var sharePic= '分享图片路径';
    shareWX({
    	title: shareName, // 分享标题
    	desc: shareDesc, // 分享描述
    	link: window.location.href, // 分享链接
    	imgUrl: sharePic, // 分享图标
    	success: function() {},
    	cancel: function() {}
    })
    
    3.微信分享出现的常见bug

    分享失败的时候,首先开启debug模式
    常见的错误是invalid signatrue

    //在文档中的 附录5-常见错误及解决方法里的第二项

    2.invalid signature签名错误。建议按如下顺序检查:

    1. 确认签名算法正确,可用http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign 页面工具进行校验。
    2. 确认config中nonceStr(js中驼峰标准大写S), timestamp与用以签名中的对应noncestr, timestamp一致。
    3. 确认url是页面完整的url(请在当前页面alert(location.href.split(’#’)[0])确认),包括’http(s)?/‘部分,以及’?‘后面的GET参数部分,但不包括’#'hash后面的部分。
    4. 确认 config 中的 appid 与用来获取 jsapi_ticket 的 appid 一致。
    5. 确保一定缓存access_token和jsapi_ticket。
    6. 确保你获取用来签名的url是动态获取的,动态页面可参见实例代码中php的实现方式。如果是html的静态页面在前端通过ajax将url传到后台签名,前端需要用js获取当前页面除去’#‘hash部分的链接(可用location.href.split(’#’)[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。

    通俗讲 ,一般有以下三种

    • 1.传给后台的url问题:var url = encodeURIComponent(location.href.split(’#’)[0]);
    • 2.config中nonceStr字段的写法
    • 3.appid的错误,必须跟你的js授权地址对应的公众号appid
    二、QQ分享

    QQ是通过head里面的标签来识别分享的图标可标题的
    涉及到H5微数据的一个属性itemprop,有兴趣可以查一查
    下面是例子:

    <meta itemprop="name" content="@猴子派来的逗比发了一个两三分钟短视频,看了会上瘾,怕是有毒吧!"/>
    <meta itemprop="description" name="description" content="两三分钟 "/>
    <meta itemprop="image" content="http://ovideo.2or3m.com/fzlist/20170325/fYzCXHnnA5.jpg"/>
    

    在js中的应用:获取完数据后自定义分享

    /*QQ分享*/
    var shareName = '分享标题';
    var shareDesc= '分享描述';
    var sharePic= '分享图片路径';
    var metaStr = '<meta itemprop="name" content="'+shareName+'"/><meta name="description" itemprop="description" content="'+shareDesc+'"/><meta itemprop="image" content="'+sharePic+'"/>';
    $('head').append(metaStr);
    $('title').html(shareName);
    
    展开全文
  • 微信作为国民app,几乎是每个人手...对于一个分享功能,我们首先需要先规划自定义分享布局,判断用户手机有无微信app,若有获取对应的权限,然后走友盟的接口回调,实现整个微信分享功能。   自定义布局  这个...
  • 社交分享(一)系统自带分享功能

    千次阅读 2016-06-29 10:41:51
    社交分享功能, Social.framework, UIActivityViewController SLComposeViewController
  • 今天在项目中发现有些手机调起微信分享链接功能可以成功,但是有些sendReq返回是false 无法分享。 同一品牌不同型号、不同固件版本对图片压缩的方式都不一样,查看了所有手机压缩后的分享缩略图,每款手机压缩后的...
  • 2.分享了之后,判断分享到群还是个人 3.用户点击分享的内容进来,然后进行其他操作如统计信息 效果图 1.分享群: 2.同样分享到个人 代码: index.js const app = getApp() Page({ onLoad: ...
  • 在以前的项目中,实现分享功能需要先去申请下载友盟的社会化组件,里面的QQ分享还有微信分享还要区申请繁琐的key,容易出现各种麻烦,如果碰到友善的友盟客服,他会耐心的给你解答,要是碰到态度不好的,人家直接不...
  • 小程序分享功能

    千次阅读 2019-01-08 09:56:47
    现在为鼓励用户自发分享喜爱的内容,减少“强制分享至不同群”等滥用分享能力,破坏用户体验的行为,在我们权衡了分享功能带来的利弊后。 这个是我本人的,前端技术QQ交流群,有不会的问题,可...
  • Android APP分享功能实现

    万次阅读 多人点赞 2014-12-03 15:44:14
    【Android应用开发详解】第01期:第三方授权认证(一)实现第三方授权登录、分享以及获取用户资料  由于公司项目的需要,要实现在项目中使用第三方授权登录以及分享文字和图片等这样的效果,几经波折,...
  • 最近比较流行的答题小程序通常会有这么一个功能分享到群增加答题次数,分享到好友无效,那么问题来了,我们如何能够判断用户分享到的是群还是好友呢? 通过查找API文档我发现会有这个一个东西withShareTicket ...
  • 微信官方已经关闭小程序分享onShareAppMessage方法中关于分享事件调用成功或失败的回调,详见官方文档 关于微信小程序页面分享方法参数说明
  • 一、前言本文写的目的很简单,因为微信封了抖音短视频分享功能,但是这个对于用户来说都是不好的体验,当初3Q大战,损害的是用户利益,现在也是用户最后都是最受伤的一个。而这两次...
  • 微信公众号JSAPI分享功能踩坑记录

    千次阅读 2019-08-14 09:58:16
    分享功能必须是通过企业认证的公众号才有这个权限。可以登陆公众号后在 “开发-》接口权限” 里查看是否已获取该权限。然后再进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 二,后台获取分享所需的...
  • android实现微信分享、朋友圈分享功能

    千次阅读 多人点赞 2020-11-25 11:17:41
    相信做app的都遇到要分享朋友圈,或者把东西分享给别人的这个功能,下面就是实现这个功能的代码 1、第一步添加依赖 implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+' implementation '...
  • js实现微信自定义分享功能

    千次阅读 2018-03-22 20:53:22
    1.首先要进行js接口安全域名的设置和配置分享页面引用微信js&lt;script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"&gt;&lt;/script&gt;//公众号appid,时间戳,随机字符串,...
  • 这里增加的分享统计日志功能主要是用来记录分享页面的访问分析,即是谁分享的页面被谁打开了,一次打开从前台进入后台这个浏览时间有多长。说白了,也就是出于营销推广方面的需要,来进行分享统计,谁分享了页面增加...
  • 最近要实现一个分享到微信朋友圈的功能,遇上赶快找度娘,一打听,实现方法有2种,一种是通过intent意图打开微信的分享界面,经过试用了其他应用,这个方法体验不好,果断pass掉,第二种方法就是去微信官网开开发者...
  • 微信公众平台开始支持前端网页,大家可能看到很多网页上都有...我们可以发现微信内嵌浏览器定义了一个私有 JavaScript 对象:WeixinJSBridge,通过操作这个对象的相关方法可以实现分享到微信朋友圈,和判断一个微信号
  • Android 一键分享功能开发教程

    千次阅读 2014-09-11 16:03:53
    最近在开发一个社交平台的app需要用到分享功能,本来想自己开发的,在网上花了很长时间查了很多教程结果却不尽人意,无意中看到还有类似的开源组件友推,可以[url=http://youtui.mobi/]实现Android 一键分享功能[/...
  • 实现微信小程序分享功能

    千次阅读 2020-10-27 11:27:27
    一、场景介绍 场景: 用户A分享小程序,用户B点击小程序,即用户A成功邀请新用户,用户A升级为VIP。 思路: 用户A分享小程序,用户B...2.开启分享功能,并传递参数 接口:onShareAppMessage 接口地址:https://devel
  • 判断微信小程序转发是否成功

    万次阅读 2018-08-25 15:34:42
    微信小程序在小程序内转发的方式有两个,分别是 和页面右上角的转发,两种转发都会调用 Page....要判断是否转发到群聊,需要使用用 wx.showShareMenu(OBJECT),并且参数withShareTicket为true。wx.showShareMenu({ ...
  • 安卓分享功能的实现

    千次阅读 2016-04-27 20:16:59
    安卓分享功能的实现
  • JSSDK实现微信分享功能

    万次阅读 2017-10-03 09:57:10
    功能:在微信内置浏览器页面实现分享页面功能。 注意:关于微信内置浏览器的私有对象WeixinJSBridge分享的接口都已经作废了,即下面的定义都是无效的: $(function(){ var appId = '公众号的appid'; var imgURL ...
  • 小编接到领导任务,写h5移动端活动页面,点击页面内容调取ios和Android开发自己写的分享功能(包括微信、微信朋友圈、QQ、QQ空间等),包括用户未登录,让其登录后才能分享,分享成功后发起请求给予优惠券功能,下面...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 68,817
精华内容 27,526
关键字:

分享功能判断是否分享成功