微信分享

处理使用Intent分享图片到微信朋友圈时,在微信7.0版本出现“获取资源失败,无法分享到朋友圈”,导致分享失败的问题

此生再无相见时 提交于 2019-12-12 13:03:36
在最近项目测试中,今天发现以前一直正常使用的分享图片到微信朋友圈的功能突然用不了了,点击分享到朋友圈时,提示“获取资源失败,无法分享到朋友圈”,测试手机微信是最近一两天刚更新到了微信7.0,以前该功能接口一直使用正常,为了验证这一点,卸载最新版微信,安装回上一微信版本6.7.3,发现图片分享到朋友圈功能接口正常,很明显,微信7.0大版本发布,图片分享到朋友圈的规则也发生了变化,如下是项目中一直以来处理图片分享(多图片)到朋友圈的主要代码(在已安装微信的前提下): /** * 分享图片到微信朋友圈 * @param bmp 分享的图片的Bitmap对象 * @param content 分享内容 */ public void shareImageToWechat (Bitmap bmp, String content) { File file = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsoluteFile(); String fileName = "share" ; File appDir = new File(file, fileName); if (!appDir.exists()) { appDir.mkdirs(); } fileName =

解决微信公众号二次分享的BUG记录

旧时模样 提交于 2019-12-10 18:48:06
一个以前的公众号分享功能,当时由于测试较少,所以关于页面二次分享链接会丢失自定义的图片和标题,各种疯狂查阅、调试,最终皇天不负有心人。以下是整个过程的记录------ 我的正常分享代码如下 $(function () { shareInit(); }) //分享初始化 function shareInit() { var httpUrl = location.href.split('#')[0]; var u = navigator.userAgent; var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); if (isiOS) { //iOS需要先encodeURI编码再传入后端进行签名(为了与分享链接link参数需要保证一致) //而android不需要,反而编码后不能分享 httpUrl = encodeURI(httpUrl); } var sendJSON = { "wxOpenId": Number(wId), "userId": Number(userId), "code": code, "httpUrl": httpUrl }; $.ajax({ url: 'http://xxxx.com/api/shareService.asmx', type: "POST", contentType:

微信浏览器H5开发常见的坑

巧了我就是萌 提交于 2019-12-10 10:46:51
ios端兼容input光标高度 问题详情描述: input输入框光标,在安卓手机上显示没有问题,但是在苹果手机上 当点击输入的时候,光标的高度和父盒子的高度一样。例如下图,左图是正常所期待的输入框光标,右边是ios的input光标。 出现原因分析: 通常我们习惯用height属性设置行间的高度和line-height属性设置行间的距离(行高),当点击输入的时候,光标的高度就自动和父盒子的高度一样了。(谷歌浏览器的设计原则,还有一种可能就是当没有内容的时候光标的高度等于input的line-height的值,当有内容时,光标从input的顶端到文字的底部 解决办法: 高度height和行高line-height内容用padding撑开 .content { float: left; box-sizing: border-box; height: 88px; width: calc(100% - 240px); .content-input { display: block; box-sizing: border-box; width: 100%; color: #333333; font-size: 28px; //line-height: 88px; padding-top: 20px; padding-bottom: 20px; } } ios端上下滑动时卡顿、页面缺失

微信开放JS-SDK,助力网页开发[转自微信官方]

旧巷老猫 提交于 2019-12-10 04:23:56
微信公众平台今日面向开发者开放微信内网页开发工具包(微信JS-SDK)。 通过微信JS-SDK提供的11类接口集,开发者不仅能够在网页上使用微信本身的拍照、选图、语音、位置等基本能力,还可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验。 微信JS-SDK主要包含以下能力: 1、分享类接口 支持获取“分享到朋友圈”、“发送给朋友”、“分享到QQ”和“分享到微博”按钮的用户点击状态,同时支持自定义分享内容。 2、图像类接口 支持拍照、从手机相册选择图片、上传图片、下载图片、预览图片功能。 3、音频类接口 支持实现录制、播放、暂停播放语音等功能,同时支持将语音快速上传到云端服务器或从云端服务器将语音快速下载到网页。 4、智能类接口 支持将语音快速地转换成文字。开发者无需掌握语音识别相关技术,只需简单地引用微信JS-SDK提供的方法即可实现。 5、设备信息类接口 支持获取当前手机设备的网络状态,如2g、3g、4g或wifi,为用户提供流畅的浏览体验。 6、地理位置类接口 支持获取用户的地理位置信息(需用户同意),支持使用微信内置的地图查看器查看地理位置或导航。 7、界面操作类接口 支持隐藏或显示微信内置浏览器“右上角菜单”、“分享到朋友圈”、“发送给朋友”、“复制链接”等指定的按钮,支持关闭当前网页窗口以返回公众号会话。 8、微信扫一扫接口

分享给微信好友的淘宝乱码中隐藏了什么秘密

蹲街弑〆低调 提交于 2019-12-09 23:45:25
马上要过生日了,我尝试在淘宝找到了自己喜欢的同款礼物,点击右上角分享到她的微信,看她能不能读懂我的小心思。这个分享的过程涉及到一段“乱码”(淘口令,后续均以淘口令来称呼),可别小看这段淘口令,它包含了很多信息。今天主要就是分享一下为什么淘宝分享出来的内容是淘口令?淘口令包含了什么信息?以及解析这段工具是怎么制作的。 这是一个系列文章,涉及淘客工具的使用与制作,后续陆续会完成一个整套系列工具的开发,欢迎收藏关注看整个系列。文中可能涉及到链接信息,仅仅只是做程序解释演示使用,并不能直接达到具体商品地址。图片上的二维码地址已做马赛克处理。 为什么是乱码(淘口令) 对于下面这段从淘宝分享出来的文字,你除了能看懂中括号里面的问题,其它的文字是不是也能猜出个八九不离十?这段所谓的乱码文字就是淘口令。 【手撕素肉豆腐干100包素牛排整箱小包装麻辣条休闲好吃不贵的零食】點ゞ撃°鏈ㄣ接,再选择瀏覽●噐○咑№亓;或復ず■淛这句话¢HvpZYBM7U6D¢后咑閞👉淘灬寳👈 微信对于分享有很多限制,有了限制我们可以不被太多的分享信息打扰。有了限制我们就需要认识上面类似火星文的乱码,乱码为什么微信就限制不了了呢?其实也是可以限制的,在去年有一段时间就有淘客反馈,淘口令也被限制分享了。但是对于聊天内容这个还是比较容易误伤。 淘口令中有什么 上述一段文字你认识或者不认识的汉字或者符号其实都是修饰文字

php-微信分享签名

风格不统一 提交于 2019-12-09 17:52:42
//测试 $APPID='*************************'; $SECRET='***********************'; $url = trim($_REQUEST['url']); $root['url'] = $url; $memcache = getRedis(); $mem_valid_time = 7100; //获取access_token,并缓存 $memcache_key = 'wx_share_sign_access_token'; $mem_list = $memcache->get($memcache_key); //缓存中没有数据 if (empty($mem_list)) { $token = null; if (!$token || strlen($token) < 6) { $res = file_get_contents("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$APPID."&secret=".$SECRET.""); $res = json_decode($res, true); $token = $res['access_token']; } $new_list = $token; //更新缓存

微信公众号分享功能防坑指南

核能气质少年 提交于 2019-12-07 00:36:58
//1.分享出去的链接域名必须和微信公众号后台配置的业务域名一致,注意一点,微信公众号配置的业务域名不能带端口号,否则分享不成功,微信小程序到是没有这个限制。 //2.需要把即将废弃的分享接口也加进去,做好兼容,否则分享同样会失效。 wx.config({ debug: false, appId: appId, timestamp: timestamp, nonceStr: nonceStr, signature: signature, jsApiList: [ "updateTimelineShareData", "updateAppMessageShareData", "onMenuShareAppMessage", "onMenuShareTimeline" ] }) if (wx.updateAppMessageShareData) { wx.updateAppMessageShareData({ title: title, // 分享标题 desc: desc, // 分享描述 link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 success: function() {} }); } else { wx.onMenuShareAppMessage({ title: title

微信公众号分享功能防坑指南

和自甴很熟 提交于 2019-12-07 00:25:47
//1.分享出去的链接域名必须和微信公众号后台配置的业务域名一致,注意一点,微信公众号配置的业务域名不能带端口号,否则分享不成功,微信小程序到是没有这个限制。 //2.需要把即将废弃的分享接口也加进去,做好兼容,否则分享同样会失效。 wx.config({ debug: false, appId: appId, timestamp: timestamp, nonceStr: nonceStr, signature: signature, jsApiList: [ "updateTimelineShareData", "updateAppMessageShareData", "onMenuShareAppMessage", "onMenuShareTimeline" ] }) if (wx.updateAppMessageShareData) { wx.updateAppMessageShareData({ title: title, // 分享标题 desc: desc, // 分享描述 link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 success: function() {} }); } else { wx.onMenuShareAppMessage({ title: title

微信小游戏转发、分享等功能实现

坚强是说给别人听的谎言 提交于 2019-12-06 18:44:45
本文将介绍开发微信小游戏四种常用功能的实现方法,这四种功能分别是: **获取头像功能 微信转发功能 微信分享功能 游戏圈** 在Egret Wing和微信开发者工具里的配置 为实现以上四个功能,我们需要分别在Egret Wing(图1,图2)和微信开发者工具(图3)里配置。 需要在Platform.ts里调用platform.js接口。 在Main.ts通过Platform.ts调用执行函数 。 在 platform.js写相对应的逻辑代码。 以上三点是实现四个微信小游戏功能的通用配置,具体操作如下: 获取头像 用户登录,可以获取用户自己的头像,参看微信平台。 Egret Wing,已经在Platform.ts写了默认功能,微信开发者工具已经写了默认逻辑,开发者只需要在Main添加代码 在 Egret Wing—>src—>Main.ts添加以下代码 private async runGame() { const userInfo = await platform.getUserInfo(); this.createGameScene(userInfo); } protected createGameScene(userInfo:any): void { // 用户头像 let img=new eui.Image(); img.source=userInfo.avatarUrl

微信公众号分享功能防坑指南

匆匆过客 提交于 2019-12-06 16:12:22
//1.分享出去的链接域名必须和微信公众号后台配置的业务域名一致,注意一点,微信公众号配置的业务域名不能带端口号,否则分享不成功,微信小程序到是没有这个限制。 //2.需要把即将废弃的分享接口也加进去,做好兼容,否则分享同样会失效。 wx.config({ debug: false, appId: appId, timestamp: timestamp, nonceStr: nonceStr, signature: signature, jsApiList: [ "updateTimelineShareData", "updateAppMessageShareData", "onMenuShareAppMessage", "onMenuShareTimeline" ] }) if (wx.updateAppMessageShareData) { wx.updateAppMessageShareData({ title: title, // 分享标题 desc: desc, // 分享描述 link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 success: function() {} }); } else { wx.onMenuShareAppMessage({ title: title