微信分享注意事项

  • 生成签名的路径必须是当前页面的路径
  • 分享的url不能含有特殊符号,例如# (所以vue-cli项目路由要用history模式history模式配置)
  • ios分享图标不能超过32K
  • link参数带中文或者特殊字符,带中文的url在安卓中应该也是会出问题的,但是安卓会自动encodeURIComponent(),而ios不会。所以如果url参数中带了中文字符,将参数encodeURIComponent()编码,再提交代码,ios可以正常分享。

iOS下vue项目 微信签名出错
用SPA做微信h5,调用微信jssdk的页面,安卓微信上木有问题,ios微信报当前url未注册。经过调试,是ios微信版本问题导致页面跳转url未变化,导致验签失败。所以我们大致的思想就是:在ios微信环境中,如果跳转页面与当前页面的url不一致,那么就重载刷新整个跳转页面。因为项目使用vue,所以我们使用vue-router的钩子函数beforeRouterEnter()来做此操作,将钩子函数写入js模块,使用时候混入页面vue实例选项即可

// 修复IOS版微信h5 history兼容性问题(b页面需要分享,在路由beforeRouterEnter方法里强制刷新b页面)
if (isIOSEnv() && from.path.indexOf('/a') >=0 && to.path.indexOf('/b') >=0) {// location.assign 会导致路由错乱, 返回上一页会出问题// location.assign(util.baseUrl + '/b')location.replace(util.baseUrl + '/b')
}

js判断浏览器环境

let isIOSEnv = function () {return /(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)
}

微信分享功能实现,兼容安卓和IOS相关推荐

  1. H5,JS仿微信输入法,键盘上面带input输入框,兼容安卓、ios

    H5,JS仿微信输入法,键盘上面带input输入框,兼容安卓.ios 效果如图: 实现思路:先写一个固定定位的input,通过改变bottom的高度将input贴在键盘的顶部,所以这里需要知道键盘高度 ...

  2. uni-app日历组件(calendar),兼容安卓、ios、微信、百度、抖音小程序

    uni-app日历组件,兼容安卓.ios.微信.百度.抖音小程序 效果图 插件连接 如何使用 参数说明 事件 效果图 插件连接 插件链接: https://ext.dcloud.net.cn/plug ...

  3. H5嵌入原生开发小结----兼容安卓与ios的填坑之路

    一开始听说开发H5,以为就是做适配现代浏览器的移动网页,心想不用管IE了,欧也.到今天,发现当初too young too simple,兼容IE和兼容安卓与IOS,后者让你更抓狂.接下来数一下踩过的 ...

  4. React Native 模仿网易云音乐手机客户端,兼容安卓和IOS两个平台

    React Native 模仿网易云音乐手机客户端,兼容安卓和IOS两个平台. GitHub 完整源码地址https://github.com/yezihaohao/NeteaseCloudMusic ...

  5. Flutter 微信分享功能实现

    志在巅峰的攀登者,不会陶醉在沿途的某个脚印之中,在码农的世界里,优美的应用体验,来源于程序员对细节的处理以及自我要求的境界,年轻人也是忙忙碌碌的码农中一员,每天.每周,都会留下一些脚印,就是这些创作的 ...

  6. centos + nodejs + egg2.x 开发微信分享功能

    前言 近期把自用的微信公众号微信分享模块从 php 修改为 nodejs 的版本,虽然这是一个很小的功能,但仍然选择了 egg 框架,也算是为未来继续开发公众号,做点扩展的准备. 本文章仅为项目介绍, ...

  7. ShareSDK接入实现微信分享功能(转)

    ShareSDK接入实现微信分享功能 首先需要去Mob官网(http://www.mob.com/)下载shareSDK For Unity3d 下载完成,解压,将以下plugins文件夹移入Unit ...

  8. 微信分享功能,手机分享图片不显示

    问题原因猜想: a.图片大小和尺寸太大出不来:图片是150X150 的,近40K,后来给制作重新做图,30X30的10k不到,分享图片大小最好不要超过32k ,尺寸100x100以上就行,别太大了,太 ...

  9. 一键复制android代码,兼容安卓和ios实现一键复制内容到剪切板

    js兼容安卓和ios实现粘贴板一键复制 color: #000; background: #fff; overflow-y: scroll;-webkit-text-size-adjust: 100% ...

  10. vue项目做微信分享功能

    vue项目做微信分享功能 安装sdk npm install weixin-js-sdk --save 方法 1.新建js文件wxapi.js 2.在wxapi.js中引入sdk以及配置一些基本信息( ...

最新文章

  1. 使用E-MapReduce服务将Kafka数据导入OSS
  2. [新功能]团队Blog群发邮件
  3. C# 语句中的各种单例模式代码
  4. Statement对象重新执行将关闭当前ResultSet
  5. 你必须知道的10个提高Canvas性能技巧
  6. matlab中的:的优先级_内容早期设计:内容优先
  7. 每日一题(24)—— const
  8. Python 3.9 beta2 版本发布了,看看新特性?
  9. DNF包管理命令在CentOS 8和RHEL 8上的使用
  10. 二分图判定(涂色问题)
  11. java构造方法可以是私有的吗_Java中的构造函数可以私有吗?
  12. 无法解析 org.apache.commons:commons-pool2:2.4.2
  13. jQuery.Validate.js验证大表单的优化
  14. php 5.5 preg replace,解决ecshop在php5.5以上环境preg_replace报错方法
  15. 用HTML5为你的网页添加音效(兼容Firefox 3.5+, IE 6-9, Safari 3.0+, Chrome 3.0+, Opera 10.5+)
  16. 输出数字矩阵并把最后变为PUM
  17. 第十届蓝桥杯 2019年国赛 最优旅行
  18. 板内盘中孔设计狂飙,细密间距线路中招
  19. 有关神经网络的训练算法,深度神经网络训练方法
  20. 数据高位和低位的分离

热门文章

  1. 从《模仿游戏》认识图灵
  2. 2022年 HSC-1th中CRYPTO的RSA
  3. 30分钟!一键部署Oracle 19C单机CDB+PDB
  4. CC2530接入OneNET-实现数据上传和命令下发
  5. 《狼图腾》作者:姜戎
  6. 纪录一年多来项目管理的经历
  7. 15.字符串处理案例--列车车次查询
  8. 搜狐合并Chinaren.com
  9. 联想rd650怎么装系统win7_联想系统重装win7图解教程
  10. [BZOJ2033][清橙A1215][2009国家集训队]大灾变-半平面交