步骤

1.适配不同机型来创建微信授权按钮(可自定义 具体看微信API文档)
2.通过getSetting检查是否有授权过
3.有授权则会有scope.userInfo字段,可直接通过getUserInfo获取用户信息,否则获取信息失败,注意:openid等隐私数据需要解密获得,或者通过外部自主服务器的接口获得,因为微信小游戏不允许访问带api.weixin.com域名的接口
4.通过createUserInfoButton创建一个授权按钮,点击按钮会弹窗授权
5.onTap注入点击事件

setAuthBtn(btnNode:cc.Node){let btnSize = cc.size(btnNode.width+10,btnNode.height+10);let frameSize = cc.view.getFrameSize();let winSize = cc.director.getWinSize();// console.log("winSize: ",winSize);// console.log("frameSize: ",frameSize);//适配不同机型来创建微信授权按钮this.left = (winSize.width*0.5+btnNode.x-btnSize.width*0.5)/winSize.width*frameSize.width;this.top = (winSize.height*0.5-btnNode.y-btnSize.height*0.5)/winSize.height*frameSize.height;this.weight = btnSize.width/winSize.width*frameSize.width;this.height = btnSize.height/winSize.height*frameSize.height;// console.log("button pos: ",cc.v2(left,top));// console.log("button size: ",cc.size(width,height));let self=this;self._wx.getSetting({success (res){if (res.authSetting['scope.userInfo']){console.log(`微信已授权`)self.getUserInfo(success,fail);}else{ //未授权console.log(`弹窗授权:w`+self.weight+" h:"+self.height+" l:"+self.left+" t:"+self.top)//弹窗授权self.authBtn=self._wx.createUserInfoButton({type: 'text',text: '',style: {left: self.left,top: self.top,width: self.weight,height: self.height,backgroundColor: '#ff0000',color: '#ffffff',}});//点击授权self.authBtn.onTap(res => {if(res.errMsg === 'getUserInfo:ok'){//授权成功console.log(`获取用户信息成功`);var userInfo = res.userInfovar nickName = userInfo.nickNamevar avatarUrl = userInfo.avatarUrlvar gender = userInfo.gender //性别 0:未知、1:男、2:女var province = userInfo.provincevar city = userInfo.cityvar country = userInfo.countryconsole.log("nickName:"+nickName+" avatarUrl:"+avatarUrl+" gender:"+gender+" province:"+province+" city:"+city+" country:"+country+" openid:"+userInfo.openId+" unionId:"+userInfo.unionId);userInfo.openId=self.openId;self.authBtn.destroy();self.authBtn=null;}    /* else{self.authBtn.destroy();fail&&fail();}    */      });}}});}

Cocos Creator 微信登录授权按钮适配相关推荐

  1. cocos creator 微信小游戏接口

    cocos creator 微信小游戏接口 /** @Description:微信小游戏* @version: * @Author: lvpeijun* @Date: 2019-12-02 10:43 ...

  2. java调用微信加密_微信登录授权, 并且解密加密内容获取手机号和地区

    所使用的的依赖 org.springframework.boot spring-boot-starter-web 2.3.7.RELEASE org.apache.httpcomponents htt ...

  3. 网站微信登录授权 ASP.NET

    最新做一些项目都有微信登录注册什么的,今天就把自己整理的demo提供给大家 微信认证流程(我自己简称三次握手): 1.用户同意授权,获取code 2.通过code换取网页授权access_token, ...

  4. 混合应用 微信登录授权 微信登录认证失败 ios PGWXAPI错误-1 code:-100 / 安卓 message:invalid appsecret innerCode:40125...

    最近项目需要做微信登录,于是利用HTML5+ API Reference的OAuth模块管理客户端的用户登录授权验证功能,允许应用访问第三方平台的资源. (链接:https://www.dcloud. ...

  5. react native微信登录授权,以及一些错误

    一.背景 公司的APP,上次发布版本,我们的APP微信登录还是可以用的.但是在最新一版中,微信登录一直报-6的错误.于是开始了蛋疼的寻找之路. 二.关于RN中使用微信组件的问题 请参考链接:http: ...

  6. 解决cocos creator微信小游戏本地缓存文件超过限制问题

    cocos creator微信小游戏开发,如果游戏包内资源超过包体大小限制,那么可以通过远程加载的方式加载资源(代码脚本文件除外). 小游戏在迭代过程中因为缓存资源的积累,在加载资源的时候会出现超过缓 ...

  7. 如何进行微信登录授权测试?

    准备工作 移动应用微信登录是基于OAuth2.0协议标准 构建的微信OAuth2.0授权登录系统.在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审核通过的移动应 ...

  8. Cocos Creator 微信小游戏无法正确显示头像 解决方案

    常见的获取微信头像方法 UserInfo:  用户授权成功后 返回的微信用户信息 UserInfo 结构体信息详情: 进入 微信如何登陆授权: 进入 let url = userInfo.avatar ...

  9. App中快速复用微信登录授权的一种方法

    在微信小程序下,小程序登录功能一般会通过 OpenID 或 UnionID 作为唯一标识,与小程序服务的账号体系进行关联打通,完成用户账户体系的构建与设计. 如果在像支付宝小程序.百度小程序第三方平台 ...

  10. Cocos Creator 微信创意小游戏《甜蜜糖果屋》团队专访:让纸片人活起来

    在 1 月 9 日的 2019 微信公开课 Pro 上,有一款创意十足的互动式游戏出现在小游戏宣讲环节,它便是今日 Cocos 的专访对象<甜蜜糖果屋>. <甜蜜糖果屋之花恋奇妙物语 ...

最新文章

  1. Access和SQL server开启表间关系,并实现更新或删除母表数据自动更新或删除子表数据...
  2. Lombok 原理分析与功能实现
  3. SpringBoot启动项目时提示:Error:java: 读取***.jar时出错;
  4. 关于jquery的ajax编码的另类解决方案,巨简便
  5. 堰流实验报告思考题_堰流流量系数测定实验
  6. andpods授权码订单号分享_微信OAuth2授权登录
  7. uniapp前端处理接口返回一整个html格式
  8. 一个高性能RPC框架的连接管理
  9. yb3防爆电机型号含义_【产品信息】防爆充电机
  10. iOS 一种很方便的构造TarBar
  11. zip命令加密和解密
  12. LaTeX 中的数学字体
  13. MER 音乐情感识别-论文笔记8
  14. 隐形窗口_建立网站时要考虑的隐形(但至关重要)注意事项
  15. 华为hn–wx9x笔记本电脑_华为荣耀9x多少钱 华为和荣耀笔记本差别
  16. CSS 去掉点li 的点
  17. 英语-非谓语动词作定语
  18. js中有哪几种数据类型
  19. 魔王语言(C语言版)
  20. 健身的基本知识(4)

热门文章

  1. Qt图像处理技术二:对QImage图片简单滤镜(暖色,冷色,反色,老照片,灰度)
  2. 如何用photoshop调出梦幻冷色调
  3. 【QT】利用QT做一个键盘检测的例子
  4. 怎么对注册表中的垃圾文件进行清理?
  5. SysAnti.exe和autorun.inf病毒的查杀
  6. eclipse Strut2环境搭建
  7. numpy相关介绍和基本操作
  8. 腾讯云轻量应用服务器如何开通使用主机安全?
  9. 统计元音(函数专题)
  10. 计算机桌面调音量的图标不见了,电脑声音图标不见了win7怎么办_win7电脑调音量的图标不见了如何找回-win7之家...