烂柯野人
烂柯野人
  • 发布:2021-07-09 10:49
  • 更新:2021-07-09 17:00
  • 阅读:409

【报Bug】IOS下QQ登陆问题

分类:HTML5+

产品分类: HTML5+

HBuilderX版本号: 3.1.18

手机系统: iOS

手机系统版本号: IOS 14

手机厂商: 苹果

手机机型: iphone 11

打包方式: 云端

App下载地址或H5⽹址: https://itunes.apple.com/cn/app/数学长征/id1437373119

示例代码:

if (!s.authResult) {
s.login(e => {
// console.log('--------------1:', JSON.stringify(s.userInfo), JSON.stringify(s.authResult))
s.getUserInfo(e => {
let userInfo = e.target.userInfo
userInfo.openid = e.target.authResult.openid
resolve(userInfo)
}, e => {
reject(获取用户信息失败:${JSON.stringify(e)})
})
}, e => {
reject(登录服务失败:${JSON.stringify(e)})
// reject(登录服务失败:${e.message} - ${e.code})
})
} else {
// console.log('--------------2:', JSON.stringify(s.userInfo), JSON.stringify(s.authResult))
s.getUserInfo(e => {
let userInfo2 = e.target.userInfo
userInfo2.openid = e.target.authResult.openid
resolve(userInfo2)
}, e => {
reject(获取用户信息失败:${JSON.stringify(e)})
})
}

操作步骤:

'''
// 微信、QQ登录
if (!s.authResult) {
s.login(e => {
// console.log('--------------1:', JSON.stringify(s.userInfo), JSON.stringify(s.authResult))
s.getUserInfo(e => {
let userInfo = e.target.userInfo
userInfo.openid = e.target.authResult.openid
resolve(userInfo)
}, e => {
reject(获取用户信息失败:${JSON.stringify(e)})
})
}, e => {
reject(登录服务失败:${JSON.stringify(e)})
// reject(登录服务失败:${e.message} - ${e.code})
})
} else {
// console.log('--------------2:', JSON.stringify(s.userInfo), JSON.stringify(s.authResult))
s.getUserInfo(e => {
let userInfo2 = e.target.userInfo
userInfo2.openid = e.target.authResult.openid
resolve(userInfo2)
}, e => {
reject(获取用户信息失败:${JSON.stringify(e)})
})
}
'''

预期结果:

'''
返回用户信息
'''

实际结果:

'''
获取用户信息失败:{"code": "-1001","message": "未登陆或登陆已注销"}
'''

bug描述:

在IOS下用QQ登陆可以唤起授权,但授权返回后,获取用户信息失败,code:-1001,消息:未登陆或登陆已注销。同一套代码,安卓下是好的,麻烦检查一下,谢谢!

2021-07-09 10:49 负责人:无 分享
已邀请:
DCloud_iOS_WZT

DCloud_iOS_WZT

appid 相关信息是否有问题

  • 烂柯野人 (作者)

    感谢回复,appid,经过反复检查没有问题,与QQ开放平台给的一样,我们软件之前的版本中QQ登陆是可以的,昨天升级了hbuilderX后重新打包,出现此问题,经反复检查,估计问题出在hbuildex里,麻烦看看,谢谢!

    2021-07-09 12:12

  • DCloud_iOS_WZT

    回复 烂柯野人: 用uni-demo中的qq登录试下有没有问题

    2021-07-09 12:28

  • DCloud_iOS_WZT

    回复 烂柯野人: 本地调试有问题吗

    2021-07-09 12:28

  • 搁浅

    回复 DCloud_iOS_WZT: 本地调试也是IOS不行,和云打包一样

    2021-07-09 13:02

烂柯野人

烂柯野人 (作者) - 数学长征开发者

uni-demo中的QQ登陆是可以的,我下载个老版本的HBuilderX试试

  • DCloud_iOS_WZT

    还是看下打包前是不是有什么改动,或者是不是key过期之类的,我这边hx最新版本的QQ登录是没问题的

    2021-07-09 15:08

烂柯野人

烂柯野人 (作者) - 数学长征开发者

问题找到了,经过与github上的登陆源码对比,需要先Logout,再login就可以了。感谢DCloud!

  • DCloud_iOS_WZT

    好的,应该是本地的过期了

    2021-07-09 17:14

该问题目前已经被锁定, 无法添加新回复