其实MSDK WIKI讲的很详细,这里就只挑重点了

名词解释

名称 名词概述
平台 微信,手Q统称平台
openId 用户授权后平台返回的唯一标识
accessToken 用户授权票据, 获取此票据以后可以认为用户已经授权, 分享/支付等功能需要此票据. 手Q的accessToken有效时间为90天. 微信的accessToken有效时间为2小时.
payToken 支付票据, 此票据用于手Q支付, 手Q授权会返回此票据。微信授权不会返回此票据. 有效时间为6天
offerId 支付时使用,安卓的offerid为手Qappid
refreshToken 微信平台特有票据, 有效期为30天, 用于微信accessToken过期之后刷新accessToken.
MSDKkey MSDK前后台交互使用id,该key从MSDK 2.8.1版本开始使用,详情请点击查看 Android 2.8.1变更内容
异帐号 游戏中授权的账号和手Q/微信中授权的账号不相同, 此种场景称之为异账号.
结构化消息 分享消息的一种, 此种消息分享后的展示形式为: 左边缩略图, 右上是消息标题, 右下是消息概要。
大图消息 分享消息的一种, 此种消息只包含一张图片, 显示也只有一张图片. 也叫做大图分享, 纯图分享。
同玩好友 手Q或微信好友中玩过同一个游戏的称为同玩好友
游戏中心 手Q客户端或微信客户端中的游戏中心统称游戏中心。
游戏大厅 特指 QQ游戏大厅
平台唤起 通过平台或渠道(手Q/微信/游戏大厅/应用宝等)启动游戏
关系链 用户在平台上的好友关系
会话 手Q或微信的聊天信息
安装渠道 游戏上线前打包会根据不同渠道(例如应用宝,豌豆荚,91等)生成不同渠道号的apk包, 在安装包中的渠道号称之为安装渠道.
注册渠道 用户首次登陆时, 游戏的安装渠道, 会在MSDK后台记录, 算作用户注册渠道.
Pf 支付需要使用到的字段, 用于数据分析使用, pf的组成为: 唤起平台_账号体系-注册渠道-操作系统-安装渠道-账号体系-appid-openid.例如:desktop_m_qq-73213123-android-73213123-qq-100703379-A65A1614A2F930A0CD4C2FB2C4C5DBE1
pfKey 支付使用

推荐登录流程

注意:

在需要使用本地票据登录时,不再需要调用WGLoginWithLocalInfo改为调用WGLogin(EPlatform.ePlatform_None) ,然后等待onLoginNotify的结果。

正常授权都会通过OnLoginNotify回调回来,会得到一个token数组,微信和手Q的Token不同,

token会过期,手Q需要定时调用WGGetLoginRecord进行token的检查,比如25分钟调用一次,如果过期了则需要提示玩家重新授权。

微信的话建议配置自动刷新,将msdkconfig.ini中WXTOKEN_REFRESH按如下设置WXTOKEN_REFRESH=true或者不设置(即默认是开启的)

刷新间隔默认30分钟,CHECK_TOKEN_TIME=30

这里需要注意一点,从游戏中心启动,或者从分享的结构化消息跳转到APP,需要处理异账号功能,

主要处理OnWakeupNotify回调,这里有两种情况,一种是游戏已经在运行中的,此时可以立即对OnWakeupNotify进行处理,另一种就是游戏在未启动的情况下被唤醒,此时可能游戏本身进入时需要进行资源加载之类的逻辑,所以需要对OnWakeupNotify的数据进行缓存,等到合适的时候再执行异账号的逻辑处理。

如果是游戏之前登陆的账号与平台账号一致,则此时flag会是eFlag_Succ或eFlag_AccountRefresh,此时调用WGGetLoginRecord获取本地的票据信息即可。拿到openid和token就可以登陆到GameServer了,也可以调用WGLogin(EPlatform.ePlatform_None),然后等OnLoginNotify的回调,执行正常的授权登录流程。当然如果你游戏本身已经是运行状态了,就不用重新登录了。

如果falg是eFlag_NeedSelectAccount,则需要自己弹个提示框,并让玩家选择是否切换账号,WGSwitchUser(true)是切换用户,WGSwitchUser(false)则不切换。

切换用户的话,即调用WGSwitchUser(true),然后把玩家踢到,然后调用WGLogin拉起授权,此时拉起端会使用平台的账号进行拉起授权,而不是你游戏的账号,这就是WGSwitchUser的作用。

还有什么游戏中心启动,分享唤醒传参之类的,都得通过OnWakeupNotify来处理。这里具体就不展开了,有时间再写文章絮叨,这些都接过一遍了,一般的问题都遇到过,也都解决了,不懂的兄弟放胆问哈

腾讯MSDK手Q微信授权登录相关推荐

  1. ios微信登录不上服务器,iOS微信授权登录

    首先需要确保你的App应用在微信开发平台上注册创建并获得对应的接口,对应登录.支付等功能还涉及付费,具体申请流程就不再这里说了.到开放平台->管理中心->移动应用->查看应用,确认你 ...

  2. 京东深圳手Q微信事业部测试工程师面试总结

    京东深圳主要就是手Q微信事业部,众所周知,京东商城购物三大渠道,PC,移动端APP,再就是手Q和微信入口,京东深圳就是负责最后一块的. 京东深圳位于宝安龙光世纪大厦,宝华地铁站出来就是了. 下面凭记忆 ...

  3. Android:微信授权登录与微信分享全解析

    前言 在移动互联网浪潮中,联网APP已经把单机拍死在沙滩上,很多公司都希望自家应用能够有一套帐号系统,可是许多用户却并不一定买账:我凭啥注册你家应用的帐号?微博,微信,QQ几乎成了每个人手机中的必装应 ...

  4. [小黄书小程序]微信授权登录

    在上一篇文章中,我们在后台实现了会员管理以及会员注册登录的逻辑.其中登录方式包括: 通过手机号码和验证码登录 通过微信授权登录 在小黄书小程序上,我们支持第二种登录方式.第一种方式,今后看情况再酌情进 ...

  5. uni-app授权第三方登录(微信授权登录)

    APP微信授权登录需要到微信开放平台申请,在HBuilderX配置APP SDK中微信登录的appId,另外需要跟小程序.公众号授权账号互通的话也需要在微信开放平台申请,这是需要付费的呦(300元) ...

  6. Android接入微信SDK之一:发起微信授权登录

    1.重要的事情首先说! 包名.应用签名.app id 三者都必须和在腾讯上申请的一致!!!否则将不能成功. 包名:就是在腾讯上申请的包名 应用签名:使用微信官网提供的<签名生成工具>(这个 ...

  7. 慕课网_《微信授权登录》学习总结

    时间:2017年08月12日星期六 说明:本文部分内容均来自慕课网.@慕课网:http://www.imooc.com 教学源码:无 学习源码:https://github.com/zccodere/ ...

  8. html5+ mui框架 微信授权登录后跳回app无任何回调事件

    2019独角兽企业重金招聘Python工程师标准>>> 微信授权登录可以调起微信,但是在微信上点击确认登陆后跳回app,但是之后无任何回掉事件. 问题原因: 1 因为我在集成Face ...

  9. thinkphp 微信授权登录 以及微信实现分享

    <?php namespace app\wechat\controller; use think\Controller; use think\Request; /** * 微信授权登录类 * U ...

最新文章

  1. 理解和配置 Linux 下的 OOM Killer
  2. kali burpsuite 安装与使用
  3. 串口通信模块3:串口通信编程基础(读写、关闭)
  4. UpdatePanel中用后台调用Javascript
  5. boost::mpl模块实现lambda相关的测试程序
  6. Adhesive框架系列文章--Mongodb数据服务使用实践
  7. |Tyvj|NOIP2004|堆|贪心|P1066 合并果子
  8. 诺基亚2亿欧元建越南新工场
  9. 技术改变生活 浅谈阿里云混合云的探索与实践
  10. ArrayList去除集合中字符串的重复值
  11. Zepto 使用中的一些注意点
  12. IDEA和VS code设置默认换行符为LF
  13. oracle kup04040,ORA-20011: Approximate NDV failed: ORA-29913: 执行 ODCIEXTTABLEOPE
  14. acm--Lowest Bit
  15. Node.js十年,你大爷还是你大爷
  16. Restricted cubic splines
  17. 今宵多珍重(珍藏绝版精选)铃声 今宵多珍重(珍藏绝版精选)手机...
  18. 【计算机网络】第三部分 数据链路层(17) 广域网SONET/SDH
  19. 云计算机手机apple,云电脑IOS版怎么在苹果IOS手机上使用教程
  20. 游戏设计的艺术:一本透镜的书——第二十五章 好的游戏是通过游戏测试做出来的

热门文章

  1. 2018计算机专硕学硕,2018考生快上车!专硕VS学硕,究竟怎么选?
  2. 平面设计构图是什么,平面设计基本构图原则和形式是什么:夏雨老师
  3. Word2vec词向量
  4. 压缩包 zip RAR 7z 密码破解常用的几种方法
  5. eclipse 的RSE插件不错
  6. 【C语言程序设计进阶-浙大翁恺】C语言笔记 文件
  7. 巧妙地帮你的手机节省流量,担心流量超出的机友们看过(转)
  8. 神经网络模型如何应用到实际 - 神经网络模型数学建模案例
  9. 初学者入门级!Python基础知识学习,纯干货【建议收藏】
  10. 派生类的构造函数xu(c++)