Scitico
Scitico
  • 发布:2024-09-13 16:46
  • 更新:2024-09-13 16:58
  • 阅读:229

【报Bug】一键登录,IOS正常安卓失效

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 4.24

手机系统: 全部

手机系统版本号: Android 15

手机厂商: 华为

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

测试过的手机:

华为/苹果

操作步骤:

app的安卓版本首页点击一键登录

预期结果:

弹出手机号码和确认登录之类

实际结果:

无弹出无任何反应

bug描述:

同一套代码,发布APP为IOS版本和安卓版本。发现ios版本的一键登录正常,而安卓的一键登录功能无任何反应。

以前是正常使用的。近期才发现安卓不正常,请问如何解决?

2024-09-13 16:46 负责人:无 分享
已邀请:
DCloud_UNI_yuhe

DCloud_UNI_yuhe

你好,你的一键登录按钮,使用的相关代码是啥?

  • Scitico (作者)

    您好,我刚刚贴了代码。这段代码一年多都没有变更过,之前一直安卓和苹果手机都正常使用这个一键登录。 目前云打包发布app发现是安卓不行。 谢谢您

    2024-09-13 16:59

  • DCloud_UNI_yuhe

    回复 Scitico: 不应该啊,你改之前的代码还能运行吗?

    2024-09-13 17:06

  • DCloud_UNI_yuhe

    回复 DCloud_UNI_yuhe: 我刚才检查了一下,这login整个文件3年没有人改过了已经,你看下你是不是什么配置失效了

    2024-09-13 17:14

  • Scitico (作者)

    回复 DCloud_UNI_yuhe: 刚刚手机去安装之前已发布到华为平台的版本,发现目前也不能一键登录了,说明跟目前打包的代码无关。会不会跟云空间那边(云函数之类)有什么关系呢?

    2024-09-13 17:16

  • DCloud_UNI_yuhe

    回复 Scitico: 你看一下,有什么报错信息吗?提供一下线索

    2024-09-13 17:18

  • Scitico (作者)

    回复 DCloud_UNI_yuhe: 谢谢您。我们也在尝试查找可能原因。目前用2台不同型号的华为手机,在华为应用中心安装之前(成功)的版本,发现都不能“一键登录”,用OPPO手机安装,就正常一键登录。VIVO那边审核员发回的审核视频也是说不能一键登录。目前就一台oppo手机和苹果手机正常。

    2024-09-13 17:51

Scitico

Scitico (作者)

//一键登录认证
submitlogin() {
// #ifdef APP-PLUS

            //短震动 iOS上只有长震动,没有短震动  
            // uni.vibrateShort({  
            //  success: function() {  
            //      //console.log('success');  
            //  }  
            // });  

            if (!this.agreement) {  
                uni.showToast({  
                    title: '请先同意用户协议和隐私政策',  
                    icon: 'none'  
                })  
            } else {  

                let that = this  
                uni.login({ //正式登录,弹出授权窗  
                    provider: 'univerify',  
                    univerifyStyle: { // 自定义登录框样式  
                        "fullScreen": false, // 是否全屏显示,true表示全屏模式,false表示非全屏模式,默认值为false。  
                        "backgroundColor": "#ffffff", // 授权页面背景颜色,默认值:#ffffff   
                        "phoneNum": {  
                            "color": "#2281F5", // 手机号文字颜色 默认值:#000000     
                        },  
                        "authButton": {  
                            "normalColor": "#3479f5", // 授权按钮正常状态背景颜色 默认值:#3479f5    
                            "highlightColor": "#2861c5", // 授权按钮按下状态背景颜色 默认值:#2861c5(仅ios支持)    
                            "disabledColor": "#73aaf5", // 授权按钮不可点击时背景颜色 默认值:#73aaf5(仅ios支持)    
                            "textColor": "#ffffff", // 授权按钮文字颜色 默认值:#ffffff    
                            "title": "本机号码一键登录", // 授权按钮文案 默认值:“本机号码一键登录”    
                            "borderRadius": "24px" // 授权按钮圆角 默认值:"24px" (按钮高度的一半)  
                        },  
                        "otherLoginButton": {  
                            "visible": true, // 是否显示其他登录按钮,默认值:true    
                            "normalColor": "", // 其他登录按钮正常状态背景颜色 默认值:透明   
                            "highlightColor": "", // 其他登录按钮按下状态背景颜色 默认值:透明   
                            "textColor": "#656565", // 其他登录按钮文字颜色 默认值:#656565    
                            "title": "其他登录/注册方式", // 其他登录方式按钮文字 默认值:“其他登录方式”    
                            "borderColor": "", //边框颜色 默认值:透明(仅iOS支持)    
                            "borderRadius": "0px" // 其他登录按钮圆角 默认值:"24px" (按钮高度的一半)  
                        },  
                        "privacyTerms": {  
                            "defaultCheckBoxState": false, // 条款勾选框初始状态 默认值: true  
                            "uncheckedImage": "", // 可选 条款勾选框未选中状态图片(仅支持本地图片 建议尺寸 24x24px)(3.2.0+ 版本支持)     
                            "checkedImage": "", // 可选 条款勾选框选中状态图片(仅支持本地图片 建议尺寸24x24px)(3.2.0+ 版本支持)     
                            "checkBoxSize": 12, // 可选 条款勾选框大小,仅android支持  
                            "textColor": "#BBBBBB", // 文字颜色 默认值:#BBBBBB    
                            "termsColor": "#5496E3", //  协议文字颜色 默认值: #5496E3    
                            "prefix": "我已阅读并同意", // 条款前的文案 默认值:“我已阅读并同意”    
                            "suffix": "并使用本机号码登录", // 条款后的文案 默认值:“并使用本机号码登录”    
                            "privacyItems": [ // 自定义协议条款,最大支持2个,需要同时设置url和title. 否则不生效    
                                {  
                                    "url": "https://www.tothink.co/policy_app.aspx", // 点击跳转的协议详情页面    
                                    "title": "用户协议" // 协议名称    
                                },  
                                {  
                                    "url": "https://www.tothink.co/privacy_app.aspx", // 点击跳转的协议详情页面    
                                    "title": "隐私政策" // 协议名称    
                                }  
                            ]  
                        }  
                    },  
                    success(res) { // 正式登录成功  
                        // console.log(res.authResult); // {openid:'登录授权唯一标识',access_token:'接口返回的 token'}  
                        // that.info1 = res.authResult  
                        // 在得到access_token后,通过callfunction调用云函数  
                        uniCloud.callFunction({  
                            name: 'getPhoneNumber', // 云函数名称  
                            data: { //传给云函数的参数  
                                'access_token': res.authResult  
                                    .access_token, // 客户端一键登录接口返回的access_token  
                                'openid': res.authResult.openid // 客户端一键登录接口返回的openid  
                            },  
                            success(callRes) {  
                                // console.log('调用云函数成功' + callRes)  
                                //                         that.info1 = '调用云函数成功'  
                                // that.phone = callRes.phoneNumber  
                                that.goLoginUni(callRes.result.phoneNumber);  
                            },  
                            fail(callErr) {  
                                console.log('调用云函数出错' + callErr)  
                                // that.info3 = '调用云函数出错' + callErr  
                            },  
                            complete() {  
                                uni.closeAuthView() //关闭授权登录界面  
                            }  
                        })  
                    },  
                    fail(err) { // 正式登录失败  
                        console.log(err.errCode)  
                        console.log(err.errMsg)  
                        uni.closeAuthView() //关闭授权登录界面  
                    }  
                })  

            }  
            // #endif  
        },

要回复问题请先登录注册