注:以下分析仅供学习交流,禁做其它用途
微信授权:
微信授权登录需要拿到code,通过以下链接打开扫码页面,使用微信扫码后可获得code:
王者荣耀:https://open.weixin.qq.com/connect/app/qrconnect?appid=wx95a3a4d7c627e07d&bundleid=com.tencent.tmgp.sgame&scope=snsapi_userinfo
和平精英:https://open.weixin.qq.com/connect/app/qrconnect?appid=wxc4c0253df149f02d&bundleid=com.tencent.tmgp.pubgmhd&scope=snsapi_userinfo
ios :在safari打开就可以登录:
王者荣耀:wx95a3a4d7c627e07d://oauth?code=&state=
和平精英:wxc4c0253df149f02d://oauth?code=&state=
android:需要写个apk来实现:
Intent intent = new Intent();
在intent里传入包名、code等参数
startActivity(intent);
QQ授权:
在手机qq里授权app以后可以拿到openid、accessToken、payToken 这三个传入到游戏即可登录。
之前的版本可以直接通过scheme来授权:
王者荣耀:tencent1104466820://?platform=qq_m¤t_uin=#openid#&launchfrom=sq_gamecenter&user_openid=#openid#&ptoken=#payToken#&preAct=GameCenterActivity&openid=#openid#&atoken=#accessToken#
和平精英:tencent1106467070://?platform=qq_m¤t_uin=#openid#&launchfrom=sq_gamecenter&user_openid=#openid#&ptoken=#payToken#&preAct=GameCenterActivity&openid=#openid#&atoken=#accessToken#
新版本scheme有变化
android:目前未发现有scheme可以直接授权游戏,解决方案是用协议登录qq,游戏内截图(扫码登录),解析二维码拿到地址http://txz.qq.com/p?k=1111Lipa*ob*9*zRahcocEC&f=716027609
然后进行加密组包发包来实现扫码授权登录游戏
ios:还是可以通过scheme来进行上号,参数加密有变化用的是plist传入openid、accessToken、payToken
王者荣耀:tencent1104466820://qzapp/mqzone/0?objectlocation=url&pasteboard=加密数据
和平精英:tencent1106467070://qzapp/mqzone/0?objectlocation=url&pasteboard=加密数据
其他app也类似,感兴趣的或者有别的方案的可以一起交流 Q:1661639956