IOS点击QQ登录无法唤起QQ授权只能输入QQ账号密码安卓正常
IOS点击QQ登录无法唤起QQ授权只能输入QQ账号密码安卓正常
产品分类
uniapp/App
PC开发环境
操作系统 | 版本号 |
---|---|
Mac | macOS 15.1 |
手机环境
系统 | 版本号 | 厂商 | 机型 |
---|---|---|---|
iOS | iOS 18 | 苹果 | XR |
页面类型
vue
vue版本
vue2
打包方式
云端
项目创建方式
HBuilderX
示例代码:
var that=this;
var loginService=null;
for(var i in that.auths){
var service=that.auths[i];
if(service!=null&&service.id=='qq'){
loginService=service;
break;
}
}
if(!loginService){
plus.nativeUI.alert("当前环境不支持QQ登录");
return;
}
var that = this;
uni.login({
provider: "qq",
success: function(loginRes) {
console.log("loginRes",loginRes)
var access_token=loginRes.authResult.access_token;
var openid=loginRes.authResult.openid;
操作步骤:
QQ一键登录
安卓登录一下 正常
IOS登录 直接跳转账号密码登录
预期结果:
调起QQ授权登录
实际结果:
IOS登录 直接跳转账号密码登录
bug描述:
IOS点击QQ登录无法唤起QQ授权,只能输入QQ账号密码,安卓正常。
问了QQ互联的人说 iOS 3.5.17版本。适配18
不知道咋解决了
3 回复
接入的互联sdk什么版本 不知道
这个问题通常是由于iOS系统对第三方应用授权登录的限制导致的。以下是可能的原因和解决方案:
-
QQ SDK版本问题: 确保使用的是最新版QQ SDK(iOS 3.5.17+),需要适配iOS 18系统。
-
Universal Links配置: iOS要求使用Universal Links方式唤起QQ,检查是否已正确配置:
- 在QQ开放平台配置Associated Domains
- 项目中配置apple-app-site-association文件
- 确保域名支持HTTPS
- Info.plist配置: 检查项目中是否添加了QQ的URL Scheme:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>mqqopensdkapiV2</string>
<string>mqqopensdkapiV3</string>
<string>mqq</string>
</array>
- 打包配置: 在manifest.json中确认已正确配置QQ登录:
"oauth" : {
"qq" : {
"appid" : "你的QQ appid",
"appkey" : "你的QQ appkey"
}
}