1.微信网页开发调用jssdk时报permission denied

大致是两个原因

(1)首先注册时未将你所调用的接口名字添加至jsApiList

(2)第二个就是你的这个公众号没有权限使用这个api,例如在开发环境中的微信页面就无法调取这个api,需要发布后,到对应的有权限的公众号中再打开对应的界面,调用api才成功

2.微信jssdk 使用微信内置地图查看位置【openLocation】接口 最终显示不精确

项目开发中,web端调用的是百度地图api,而微信项目中调用的是腾讯自己的地图,两者所使用的坐标系有所不同,百度用的是自己的百度坐标系,而高德地图和腾讯地图使用的是火星坐标系,两者之间需要做一下转换

火星坐标 转换到 百度地图坐标

function huoxingToBaidu(hxLongitude, hxLatitude){  var X_PI = Math.PI * 3000.0 / 180.0;  var x = hxLongitude, y = hxLatitude;  var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * X_PI);  var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * X_PI);  var bdLongitude = z * Math.cos(theta) + 0.0065;  var bdLatitude = z * Math.sin(theta) + 0.006;  return {  bdLongitude: bdLongitude,  bdLatitude: bdLatitude  };  }  

百度地图坐标 转换到 火星坐标

function baiduToHuoxing(bdLongitude,bdLatitude) {  var X_PI = Math.Pi * 3000.0 / 180.0;  var x = bdLongitude - 0.0065;  var y = bdLatitude - 0.006;  var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * X_PI);  var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * X_PI);  var hxLongitude = z * Math.cos(theta);  var hxLatitude = z * Math.sin(theta);  return {  hxLongitude: hxLongitude,  hxLatitude: hxLatitude  }  }  

3.微信JSSDK 预览图片【previewImage】接口的坑, 安卓手机上,图片预览需要点击两次才能退出预览

在微信网页开发过程中,测试提出的一个bug,在微信中预览图片是,点击图片,打开图片正常,当再次点击时,原本应该直接退出图片预览,但是却需要点击两次才能退出预览。

分析原因

应该是 previewImage 这个接口调用了两次,进行了图片的叠加。所以需要两次才能退出

最终得出的结果

代码中实际上只调用了一次。

  1. 在Android系统的手机中,其实微信点击网页的图片会自动调用这个接口一次。然后代码中又对对这个接口调用了一次,这就造成了以上的结果。
  2. 但是在ios系统的手机中,微信并不会调用这个接口。

解决方案

在方法的最前面进行手机系统的判断,当是Android系统直接return。
然后在在下面进行微信的previewImage接口的调用

js判断是Android还是ios

var u = navigator.userAgent;isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

2018.8.1更新
这个bug好像微信自己修复了,现在无论Android还是ios,如果不调用这个方法,微信自己不会去调用了。

微信网页开发调用微信jssdk接口遇到的坑以及最终解决方法 (持续更新)相关推荐

  1. 微信网页开发(4)--使用JSSDK基础接口

    点此查看 微信公众号/微信网页/微信支付/企业微信/小程序开发合集及源代码下载 本文目录 1. JSSDK接口 2. 基础接口 3. 开发流程 3.1 绑定域名 3.2 引入JS文件 3.3 通过co ...

  2. 基于vue-cli的微信网页开发中的js-sdk的使用

    参考文档:微信公众平台.踩坑记录 一.简介 JS-SDK需要向服务端获取签名,且获取签名中需要的参数包括所在页面的url,但由于单页应用的路由特殊,其中涉及到iOS和android微信客户端浏览器内核 ...

  3. 微信网页开发:微信内h5使用wx-open-launch-weapp打开小程序,微信内h5使用wx-open-launch-app打开App的方案

    需求场景: 当我们需要使用在微信客户端打开的h5页面,在页面上打开微信小程序或者唤起App时,我们需要使用微信js-sdk提供的开放标签能力.这其中:使用wx-open-launch-weapp标签打 ...

  4. 微信小程序那点事儿(必看踩坑实用解决BUG)------持续更新(2)

    目录 wx.getSystemInfo(Object object) & Object wx.getSystemInfoSync() onShareAppMessage 分享 setNavig ...

  5. 微信网页开发--仿美团、饿了么红包分享

    需求 这个月,公司做了一个3.8女王节的活动.当时的需求是一个水果接龙的小游戏.比如,我发起了一条接龙,然后我把这个链接分享出去,A点击这个链接就可以看见我输入的水果,然后A再分享这个链接给B,B就可 ...

  6. 微信昵称乱码 mysql_微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...

    微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案如下: 问题产生原因:由于数据库及属性一致设为utf8,而utf8只支持1-3个字节.当用户昵称为emoji表情时,获取用户基本信 ...

  7. 微信开发 --- 调用微信上传图片接口,并保存到自己的服务器

    微信开发 - 调用微信上传图片接口,并保存到自己的服务器 整体思路是这样的: 1.先把手机上的图片上传到微信服务器,然后返回一个图片ID 2.在通过后台根据ID从微信后台拿到流,保存到服务器 前几个步 ...

  8. 前端vue+后台node实现获取微信用户基本信息+调用微信JS-SDK(下篇)

    1. 获取微信用户基本信息 2. vue接入微信JS-SDK 环境: 前端:vue2.0 后台:node.js 公众号:微信提供的测试号 以分享至微信和分享至朋友圈为例. 微信网页接入微信JS-SDK ...

  9. 微信网页开发wx.chooseImage多图上传、预览(已解决)

    需求: 1.调用微信jsSDK选图或者拍照(选图支持选多图) 2.选图或者拍照后提供预览,但不把图片下载到服务器 3.提交表单的时候再一并提交,把图片下载到服务器 4.支持编辑页面删除已选图片(此图已 ...

最新文章

  1. IBS illustrator for the presentation and visualization of biological sequences 中山大学
  2. Java:希望每天叫醒你的不是闹钟而是梦想!
  3. 【产品环境】使用ELK搭建日志系统
  4. AndroidStudio修改默认C盘配置文件夹(.android.gradle.AndroidStudio)以及修改后避免踩的坑
  5. 仅剩3天 | 带学《百面机器学习》葫芦书,算法+leetcode一应俱全
  6. lucene3.0_IndexSearcher排序
  7. SQL Developer 使用问题与解决方法汇总
  8. [LeetCode] 47. Permutations II_Medium tag: DFS, backtracking
  9. Java的日期格式化常用方法
  10. cache数据库教程
  11. 笔记本电脑显示打印机服务器关闭,电脑打印机服务能设定自动关闭吗
  12. (2)海思烧写工具Hitool工具使用
  13. 破产问题 (The Bankruptcy Problem)
  14. Apache Solr 建立 HBase 二级索引
  15. 计算机单位 字节,字节是什么意思?字节是什么单位
  16. 《给李彦宏先生的一封信》
  17. nepctf pwn easystack(_stack_chk_fail)
  18. Pocket英语语法---六、感官动词接不同的动词表示什么意思
  19. 阿里云服务器安装mysql数据库教程
  20. 大纲笔记转换为思维导图的,不仅仅只有幕布才能实现

热门文章

  1. 手把手教你配置BSC(币安智能链)网络,只需5分钟
  2. C++ 编程规范101读书笔记(2)设计风格
  3. 【网页端GF6-WFV数据下载问题-1】
  4. iapp启动图代码_GTA5新的R*启动器出现问题之应对方法
  5. android开发中微信公众号功能,微信公众号分享与收藏开发文档(Android应用)
  6. 我的周刊(第062期)
  7. 二跳不同链接如何使用好多粉上报ocpc有效数据?
  8. Java火焰之纹章2纹章之谜_火焰之纹章2纹章之谜
  9. C语言读入txt文件中的中文字符输出乱码
  10. Linux DHCP 服务