帅的邪门儿
帅的邪门儿
  • 发布:2023-03-29 10:04
  • 更新:2023-04-25 10:31
  • 阅读:723

【报Bug】一键登录开通了,但是调用uni.login方法还是提示未开通

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 13.2

HBuilderX类型: 正式

HBuilderX版本号: 3.7.9

手机系统: iOS

手机系统版本号: iOS 16

手机厂商: 苹果

手机机型: 12 pro max

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
uni.login({  
                    provider: 'univerify',  
                    univerifyStyle,  
                    success: async (res) => {  
                        // 登录成功  
                        console.log(res);  
                        let { errMsg, authResult } = res;  
                        if (errMsg.includes('fail')) {  
                            // uni.showModal({  
                            //  title: '提示',  
                            //  content: '一键登录失败,请重试',  
                            //  showCancel: false,  
                            // });  
                            uni.$u.toast('登录失败请重试');  
                            uni.closeAuthView();  
                            return;  
                        } else {  
                            let res = await getPhoneNumber({  
                                authResult: {  
                                    appid: this.appid,  
                                    ...authResult  
                                },  
                                address: this.address  
                            });  
                            console.log(res);  
                            if (res) {  
                                this.$refreshUserInfo();  
                            }  
                        }  
                    },  
                    fail: (res) => {  
                        // 登录失败  
                        console.log(res.errCode);  
                        console.log(res.errMsg);  
                        uni.hideLoading();  
                        switch (res.errCode) {  
                            case 30001:  
                                uni.showToast({  
                                    title: '请打开流量重试',  
                                    icon: 'none',  
                                    mask: true  
                                });  
                                break;  
                            case 30002:  
                                uni.closeAuthView();  
                                this.$nav('/pages/login/login-code');  
                                break;  
                            case 30003:  
                                this.$preLogin();  
                                break;  
                            default:  
                                uni.showToast({  
                                    title: '登录失败请重试',  
                                    icon: 'none',  
                                    mask: true  
                                });  
                                uni.closeAuthView();  
                        }  
                    },  
                });

操作步骤:

调用uni.login出现报错

预期结果:

正常一键登录

实际结果:

login:fail 当前应用AppId尚未开通uni一键登录,开通指南:https://ask.dcloud.net.cn/article/37965,https://ask.dcloud.net.cn/article/282

bug描述:

已经开通一键登录,开发者后台显示状态正常
但是使用uni.login方法登录,提示未开通一键登录

2023-03-29 10:04 负责人:无 分享
已邀请:
DCloud_云服务_moyang

DCloud_云服务_moyang

appid不对,一键登录应用有删除重新申请过?最后一次申请通过后有重新打包吗?

  • 帅的邪门儿 (作者)

    重新打包过,我现在是一个正常版,一个老年版,两个项目,两个appid,都开通了一键登录,但是用的是一个原生的安装包,在内部用plus的install方法安装了wgt资源包进行版本切换。原生安装包中是否有appid相关的东西,这种操作可行吗?

    2023-03-29 10:53

  • DCloud_云服务_moyang

    回复 帅的邪门儿: 打包时会将开发者中心appid对应的【一键登录应用ID】打到包里,请求一键登录时会有相关校验

    2023-03-29 11:21

  • 帅的邪门儿 (作者)

    回复 DCloud_云服务_moyang: 那我上面说这种办法,两个版本的资源包,公用一个原生安装包,是不可以的,对吧

    2023-03-29 11:29

  • DCloud_云服务_moyang

    回复 帅的邪门儿: 不行,实际打包的还是一个appid

    2023-03-29 14:06

  • 奥利奥饼干

    回复 DCloud_云服务_moyang: 一样的问题, 我是换了证书更新了应用信息 然后把一键登录的应用删了重新提交审核的然后一直不能用, 又把appId换了 重新提交审核 然后报appId未开通了 这个要怎么排查啊 大佬

    2023-04-24 13:47

  • DCloud_云服务_moyang

    回复 i***@126.com: 私发appid

    2023-04-24 13:57

奥利奥饼干

奥利奥饼干

在解决之前重新打了很多次自定义基座, 该试的都试了其实都没能解决

问题起因是我更换了keystore证书
所以sha1,md5, sha256都变了以后就删除了一键登录配置重新申请
通过审核后发现调用一直失败
看了论坛上的一些回复尝试把appId更换了新的, 再次重新提交了申请
新的appId审核通过后, 开始报此appId未开通一键登录
但我确认后台新的appId是已经通过审核的了

所以这个时候就猜测uni这边读取的一件登录配置是最开始的配置
然后后来进了官方的一键认证官方问题解决群 官方的人员帮忙查询了下也印证了这个问题
就一直是读取的旧的appId配置

最后我这边什么也没修改就好了 应该是官方人员在后台帮我同步了新的appId配置到应用上, 就解决了

再遇到这些问题建的话议先找dcloud的官方微信群

以上是这次问题的过程 希望能给后来的兄弟们提供一些参考

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