8***@qq.com
8***@qq.com
  • 发布:2024-01-17 11:34
  • 更新:2024-01-17 13:44
  • 阅读:110

微信小程序一键登录

分类:uni-app

一键登录在真机调式可以,打包后一键登录页面可以拉起来,但是点击本机号码登录就一直转圈圈

包名,appid都一致
预登录
preLogin(isShowMsg = false) {
return new Promise((resolve, reject) => {
uni.preLogin({
provider: 'univerify',
success: ss => {
this.isOneClickLogin = true;
this.oneClickLogin()
// resolve(true)
},
fail(err) {
// 如果手机没有插入有效的sim卡,或者手机蜂窝数据网络关闭,都有可能造成预登录校验失败。
console.log(err);
this.isOneClickLogin = false
if (isShowMsg && err.errMsg != 'login:ok') {
// 不同运营商 返回的报错字段不同
uni.showModal({
title: '当前设备环境不支持一键登录',
content: err.errMsg || err.metadata.resultMsg || err.metadata.error_data || err.metadata
.resultDesc || '请检查是否插入有效sim卡及开启蜂窝数据网络',
showCancel: false
})
}
resolve(false)
}
})
})
},

oneClickLogin() {
// await this.preLogin(true)

            uni.login({  
                provider: 'univerify',  
                univerifyStyle: {  
                    // fullScreen: true,  
                    backgroundColor: '#ffffff',  
                    otherLoginButton: {  
                        // 是否显示其他登录按钮  
                        visible: false  
                    },  
                    "icon": {  
                        "path": "/static/image/logo.png" // 自定义显示在授权框中的logo,仅支持本地图片 默认显示App logo     
                    },  
                    authButton: {  
                        normalColor: '#FC4035'  
                    },  
                    // privacyTerms: {  
                    //  // 条款勾选框初始状态  
                    //  defaultCheckBoxState: false,  
                    //  // privacyItems: [{  
                    //  //      url: '/pages/richTxt/richTxt?configName=userProtocol&title=用户协议',  
                    //  //      title: '用户服务协议'  
                    //  //  },  
                    //  //  {  
                    //  //      url: '/pages/richTxt/richTxt?configName=privacyProtocol&title=隐私政策',  
                    //  //      title: '隐私政策'  
                    //  //  }  
                    //  // ]  
                    // }  
                },  

                success(res) {  
                    uniCloud.callFunction({  
                        name: 'login',  
                        data: {  
                            access_token: res.authResult.access_token,  
                            openid: res.authResult.openid,  
                            // serversUrl: '这里上传你的接口地址'  
                        }  
                    }).then(async (dataRes) => {  
                        if (dataRes.result.code == 0) {  
                            console.log(dataRes);  
                            let phoneNumber = dataRes.result.data.phoneNumber;  
                            phoneLogin({mobile:phoneNumber}).then(res => {  
                                if (res.code == 200) {  
                                    uni.setStorageSync('USER_TOKEN',res.result.token);  
                                    // registerType 1业主 或游客 2工人  
                                    res.result.member.memberId=res.result.member.id  
                                    uni.setStorageSync('USER_INFO',res.result.member);  
                                    uni.setStorageSync('roleType',res.result.roleId);  
                                    uni.setStorageSync('userSign',res.result.userSign);  
                                    uni.closeAuthView();  

                                    if (uni.getStorageSync('inviterCode')  && uni.getStorageSync('inviterCode') !=null && uni.getStorageSync('inviterCode') !='') {  
                                        this.invMethod()  
                                    }else{  
                                        uni.reLaunch({  
                                            url:'/pages/index/index'  
                                        })  
                                    }  

                                }  
                            })  
                        } else {  
                            uni.showToast({  
                                title: dataRes.result.message,  
                                icon: 'none'  
                            })  
                        }  
                    }).catch((err) => {  
                        console.log(err);  
                        uni.showModal({  
                            title: '登录失败',  
                            content: err.errMsg,  
                            showCancel: false,  
                            success() {  
                                // 客户端关闭一键登录授权界面  
                                uni.closeAuthView()  
                            }  
                        })  
                    })  
                },  
                fail(err) {  
                    if (err.errCode != 30002 && err.errCode != '30003' && err.errCode != '30006') {  
                        uni.showModal({  
                            title: '登录失败',  
                            content: err.errMsg,  
                            showCancel: false,  
                            success() {  
                                // 客户端关闭一键登录授权界面  
                                uni.closeAuthView()  
                            }  
                        })  
                    }  
                }  
            })  
        },  
2024-01-17 11:34 负责人:无 分享
已邀请:
DCloud_云服务_LQ

DCloud_云服务_LQ

是android客户端问题吗

一键登录sdk不支持小程序

  • 8***@qq.com (作者)

    这是App

    2024-01-17 13:55

  • DCloud_云服务_LQ

    回复 8***@qq.com: 可以加微信企业群 加群方式可见开发文档 https://uniapp.dcloud.net.cn/univerify.html#question “常见问题”下方

    2024-01-17 19:31

要回复问题请先登录注册