页面A已经配置过,如果是单页面跳转,则页面B可以共享当前的SDK配置(至少菜单是这样的)
刷新页面,原先的菜单仍然会保持原样,只是调用SDK已经失效了,需要重新配置,重新配置后,菜单仍然会保持原样(如果没有显式调用)
IOS不会保持原样!刷新页面所有菜单都出来了!!!
微信会记录当前页面的菜单(除非显示改变它,否则再次进来,即使刷新页面,仍然会保持原来的菜单样子)
重新进入公众号,菜单会恢复原样吗?

地理位置测试:如果A页面已经配置过SDK,能正确获取地理位置,但是B页面获取地理位置会报签名错误(也就是说路由切换时B页面是需要重新配置的),这个和菜单的显示隐藏不同!!!

设置分享内容测试:
如果A页面设置了分享内容,那跳转到B页面,分享时(没有重设分享内容),虽然内容已经不同,但仍然触发A页面设置的分享回调(这很危险,特别是B页面重新配置SDK失败或忘了配置的情况下,会产生逻辑错乱)
然后在B页面设置分享内容,分享失效(B页面没有重设sdk),回到A页面,然后分享,发现分享的内容是当时B页面设置的分享内容(回调也是B页面的结果)!!
然后A页面重设分享内容,可以设置成功

刷新页面后,分享内容的设置将失效
page2刷新页面,从page2调回到page1,重新配置微信SDK[ok],重新设置分享内容,分享内容无效(并且无法产生分享成功/取消的回调)

A页面配置了微信,并设置了分享内容,B页面重新配置了微信,没有设置分享内容,这时候分享居然是有效的,而且是A页面当时分享的内容
B页面设置分享内容,然后回到A页面,A页面分享出来的是B页面设置的分享内容(居然没有分享失效[相当于上次的微信配置仍然有效])

ios打开微信调试模式后,分享取消或成功,不会产生回调

ios取消分享,会成功回调(关闭微信调试模式后),但是分享成功不会立即回调(会有延迟[这个问题调试了很久!!我艹],解决办法是写在timeout里面!我日)

微信配置/成功/失败回调:
wx.ready是可以提前调用的,而且可以随意多次使用(微信配置好之后,都会依次调用[可以推断:wx.ready是push到注册config:ok事件的])
wx.error也可以提前调用,而且error只能被调用依次,后面的error调用总是覆盖前面的(可以推断出error是直接替换的)
wx.config/ready/error,三者没有严格的调用顺序要求

测试微信配置还没有彻底完成,就跳转路由:
A页面路由到B页面,如果B页面在500ms内(大概时间)就配置了sdk:ok,调用显示/隐藏,报:permission denied,调地理位置,同样报:permission denied.(所以在切换路由,进入页面马上配置微信,需要做延时调用)
入口页面即使在构造函数中,就开始配置微信也不会有任何问题

A页面配置微信,B页面直接调用显示/隐藏函数,报:permission denied,调用地理位置,报:invalid signature(本页面重新配置后,正常)
A页面正在配置微信(还没有结束),路由到B页面,B页面比A页面先配置微信(B页面会报两次invalid singature,所有的注册函数都会被调用两次)
B页面比A页面后配置微信,那么A页面的功能会报:invalid signature,B页面的一切正常

IOS:如果A页面还没有配置完,路由到了B页面,则A页面的所有功能函数回调都没问题,B页面报:invalid singature(但B页面的所有功能依然能够正常使用[及时B页面多次重新配置,报签名错误,仍然能够正常使用所有功能])一次配置,永久有效??
第一次配置就错误,后来手动配置成功,除了取微信坐标外所有功能都可以正常使用(debug模式下),非DEBUG模式下,还是都能正常调用(和Android一致)

微信的所有回调函数,都会使angular脱离作用域(作用域外执行的代码(如变量赋值),不会刷新视图)

外面订阅了Observerable,函数里面直接返回Observable.of<any>(),是否可以直接被调用

某些页面配置成功了,设置分享内容也成功了,分享的内容(链接和标题)是错误的
原因1:分享的页面必须是同域名页面,如果页面域名不同,分享设置无法生效!

关于微信公账号H5 API 调用的坑 BUG的更多相关文章

  1. 微信公众账号开发之N个坑(二)

    上篇说到微信公众账号的几个坑,前面五个,已经说到菜单,宝宝继续往下赘述了.可惜,还不知道宝宝的宝宝到底是不是心疼宝宝呢,完了,我凌乱了... 回到正题,我们就不吐槽其他的了,上一篇说到微信的菜单了,那 ...

  2. 微信公众账号开发之N个坑(一)

    我这人干活没有前奏,喜欢直接开始.完了,宝宝已经被你们带污了.. 微信公众账号开发文档,官方版(https://mp.weixin.qq.com/wiki),相信我,我已经无力吐槽写这个文档的人了,我 ...

  3. H5Plus 入门学习-Dcloud H5+ API调用实例

    使用API Reference完整简单的操作,更多操作查看官方文档. 最后提供项目的下载地址[下载][一款移动APP演示]

  4. 微信支付开发h5调用

    这两天做微信支付开发.碰到大坑.纠结死我了.好不容做完. 后台java:直接上代码:注意区分前后端的变量大小写... @RequestMapping(value = "/index" ...

  5. Android微信SDK API 调用教程1

    最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官方里的文档也只是写得很模糊,说是按三步走. 1.申请App_ID 2.填写包名3. 获取程序签名的md5值, 这三 ...

  6. Android微信SDK API 调用教程

     最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官方里的文档也只是写得很模糊,说是按三步走. 1.申请App_ID 2.填写包名3. 获取程序签名的md5值, 这 ...

  7. Android微信SDK API 调用教程【转】

    原文:http://blog.csdn.net/worker90/article/details/8211451 最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官 ...

  8. [h5+api]移动app开发用到的微信好友,朋友圈,qq好友,新浪微博分享合集

    适用H5+环境,能够使用plus方法的移动app中 /** * Created by HBuilder. * User: tyx * Date: 2018-11-21 * Time: 17:28:51 ...

  9. 在Angular.js中的H5页面调用Web api时跨域问题处理

    /// <summary> /// 被请求时 /// 在Angular.js中的H5页面调用Web api时跨域问题处理 /// </summary> /// <para ...

随机推荐

  1. IIS进程池异常崩溃,导致网站 service unavailable,原因排查与记录。

    昨晚十点钟的样子,网站崩溃,开始 service unavailable,最近开始业务高峰,心里一惊,麻痹肯定进程池又异常崩溃了.又碰到什么问题?上次是因为一个异步线程的问题,导致了进程池直接崩溃,后 ...

  2. IONIC 打包安卓apk详细过程

    参照以下链接: https://blog.csdn.net/qq_20264891/article/details/79319408 当 cordova 项目安装的 android 平台版本 与 系统 ...

  3. 存储器的保护(二)——《x86汇编语言:从实模式到保护模式》读书笔记19

    接着上一篇博文说. 5.代码段执行时的保护 每个代码段都有自己的段界限.同栈段一个道理,有效界限和G位相关. G=0:有效界限 = 描述符中的段界限 G=1:有效界限 = 描述符中的段界限值 * 0x ...

  4. ELF文件解析器支持x86x64ELF文件

    此文为静态分析ELF文件结构,遍历其中Elf_Ehdr文件头信息,遍历Elf_Shdr节表头信息,并将所有节放置在左侧树控件上,遍历Elf_Phdr程序头也放置在左侧树控件上,并着重分析字符串表,重定 ...

  5. vue-cli中使用stylus

      1.在package.json文件中写入依赖: "stylus-loader": "^2.5.0", "stylus": "0 ...

  6. Hadoop实战之四~hadoop作业调度详解(2)

    这篇文章将接着上一篇wordcount的例子,抽象出最简单的过程,一探MapReduce的运算过程中,其系统调度到底是如何运作的. 情况一:数据和运算分开的情况 wordcount这个例子的是hado ...

  7. spring-boot-starter-data-elasticsearch实现es的增删查改

    首先,必须吐槽一下,springboot这个elasticsearch包对于elasticsearch的支持十分不友好,目前只支持很低版本的elasticsearch,如果有哪位大牛知道如何兼容更高版 ...

  8. About custom Theme and Style

    For android system, of course you can custom your own style and theme, but you can't break compatibi ...

  9. docker 数据卷挂载总结

    原文

  10. Java读取粘贴板内容

    package com.test.jvm.oom.design; import java.awt.Image; import java.awt.Toolkit; import java.awt.dat ...