第一步: 不管微信登录,微信支付,微信分享都需要到微信开放平台注册账号后并注册应用,拿到应用唯一标识AppID和应用密钥 AppSecret
然后集成SDK,具体如何集成查看官方文档,文档有详细介绍
微信开放平台–SDK 接入指南
第二步:

在桥接文件中导入头文件
#import "WXApi.h"在 AppDelegate 的 didFinishLaunchingWithOptions方法中注册(代码如下)WXApi.registerApp(WXAppId, universalLink: UniversalLink)

第三步:在登录界面的微信登录按钮方法中添加如下代码

如果前面集成sdk 步骤都顺利的话,这段代码就能调起微信登录的授权页

 if WXApi.isWXAppInstalled() {let rep = SendAuthReq()//这两个参数 可以照抄 第一个是固定的,第二个随意写rep.scope = "snsapi_userinfo"rep.state = "wx_oauth_authorization_state"WXApi.send(rep, completion: nil)}else {//弹框提示 未安装微信应用或版本过低kWindow.makeToast("未安装微信应用或版本过低")}

第四步:当用户点击了同意之后,返回到app内会调用一个微信的回调方法,这个回调方法写在AppDelegate中

//微信代理方法
extension AppDelegate: WXApiDelegate {//MARK:微信回调func onResp(_ resp: BaseResp) {if resp.isKind(of: PayResp.self) {//这里是微信支付的回调}  else if resp.isKind(of: SendAuthResp.self)        {  //这里是授权登录的回调let aresp = resp as! SendAuthRespDispatchQueue.main.async {if aresp.errCode == 0 {if let code = aresp.code {//这里拿到code之后 对接服务器接口 //这步 相当于账号密码登录的流程 返回用户信息//后端这个接口返回的数据需要判断是第一次授权还是 不是第一次授权,第一次授权需要去绑定手机号界面,不是第一次授权就直接跳转到首页,登录成功//如果是第一次授权,服务器再给个绑定手机号的接口//大概就这个流程}else {kWindow.makeToast("微信授权失败")}}else {kWindow.makeToast("微信授权失败")}}}}}

End

iOS -- 第三方登录之微信登录 (Swift代码)相关推荐

  1. flutter在IOS上的登录实现——QQ登录、微信登录、自动识别手机号一键登录、apple登录

    flutter在IOS上的登录实现--QQ登录.微信登录.自动识别手机号一键登录.apple登录 一.QQ登录 使用的第三方库: 具体操作方法: 1.配置 Universal Links 2.QQ互联 ...

  2. 详解如何进行第三方App接入微信登录

    微信登录接入 微信登录遵循协议Aouth2.0中的授权码模式 我们来看一下Aouth2.0中的授权码模式是怎么定义的: 授权码模式(authorization code)是功能最完整.流程最严密的授权 ...

  3. dedecms织梦第三方登录插件-QQ登录、微博登录、微信登录

    织梦程序集成第三方QQ登录.微博登录.微信登录,获取QQ.微博.微信,并存储至数据库,一键注册为网站会员,不用再次填写绑定信息,方便粘贴用户更强. 织梦第三方登录效果 第三方登录插件特点 1.所有文件 ...

  4. 集成友盟第三方实现QQ微信登录遇到的坑

    最近项目集成友盟第三方实现QQ微信登录,在集成实现过程中遇到了一些问题,也对这些问题提出一些自己的解决办法: 集成的过程不就提了,直接上问题: 一.微信登录提示"授权失败,请查看log&qu ...

  5. 第三方App接入微信登录 解读

    最近在做一个微信登录功能,发现腾讯的API文档写的实在是让人摸不着头脑,也没有搜到很详细的能让人参考的文章,借此把自己的一点儿使用心得与大家分享,欢迎指正其中的不足之处,谢谢! 准备工作 1.在微信开 ...

  6. Spring Boot集成第三方登录之微信登录

    Spring Boot集成第三方登录之微信登录 准备工作 注册 创建网站应用 网站应用开发指南 授权流程 请求CODE 获取access_token 使用access_token调用接口 获取用户个人 ...

  7. Springboot实现微信小程序注册登录及微信登录

    运行环境 jdk1.8+eclipse+tomact 8.5+maven3.5+springboot 2.0.1 微信开发者工具 数据库 一张表三个字段 CREATE TABLE `user` (`u ...

  8. html 微信登陆,登录包含微信登录.html

     登录包含微信登录 $axure.utils.getTransparentGifPath = function() { return 'resources/images/transparent.gi ...

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

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

  10. 网站如何接入第三方登录,微信登录和QQ登录:注册认证篇

    第三方登录平台接入 (QQ\微信登录) QQ登录接入 第一步成为QQ应用开发者,审核期限七天 一.所需材料 1.公司注册相关信息 2.营业执照扫描件 微信登录接入 第一步成为微信开发平台开发者,认证费 ...

最新文章

  1. RoadFlow工作流引擎安装与部署
  2. P1507 NASA的食物计划
  3. MySQL - 高效的设计MySQL库表
  4. URLEncoder和URLDecoder(乱码处理)
  5. 和中医学习到的养生方法和知识
  6. 华东交通大学2017年ACM双基程序设计大赛题解
  7. 使用正则表达式更改编译版本号
  8. 自定义PocketMod的农历页面
  9. 如何在CSDN博客中的所贴的代码进行【代码块】显示
  10. Codeforces 1045. A. Last chance(网络流 + 线段树优化建边)
  11. PAT L3-015 ---- 球队“食物链”(DFS)
  12. AndroidMainfest.xml具体解释——lt;activitygt;
  13. 前馈神经网络——深度学习之神经网络核心原理与算法
  14. G-华华对月月的忠诚
  15. 【Flink】flink Operator State 的使用及Redistribute listState UnionListState
  16. 任何人都可以胜任全栈开发?
  17. TechNet 晒文 - Windows 7 系列汇总
  18. 锐捷linux上网教程,校园网Ubuntu锐捷(myxrgsu)安装联网方法
  19. 身居乱世之中,重新审视“活法
  20. 计算机网络(5.13)运输层- TCP的拥塞控制方法

热门文章

  1. 梦幻可以在2个服务器无限转吗,梦幻西游手游:从iOS到双平台,转区竟然能转成了全服第一?...
  2. css文字背景蒙版_使用CSS创建蒙版的背景效果
  3. java输出精度到0.1_【java】浮点数精度问题,为什么0.1===0.1 5+0.1 = 5.1?
  4. 转自【AI科技评论】专访李海洲教授 | 机器智能对话是毕生所求
  5. Android 微信分享不显示分享出去的图标问题
  6. 南卡小音舱体验评测:CD级音质听感震撼
  7. Linux下简单编译so库,调用另一个so库的方法
  8. C++Qt入门(1)---Qt简介,第一个Qt程序,Qt按钮
  9. Java生成word表单|勾选框
  10. B 站递给 GitHub 的 DMCA 文件被公布,蹩脚的英语引发争议