QUASIMODO
QUASIMODO
  • 发布:2025-12-22 15:17
  • 更新:2025-12-22 18:39
  • 阅读:27

【报Bug】安卓 uni.connectWifi 连接wifi,没有连接失败的标识

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windows 10 专业版

HBuilderX类型: 正式

HBuilderX版本号: 4.87

手机系统: Android

手机系统版本号: Android 16

手机厂商: vivo

手机机型: iq11

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
uni.connectWifi({  
                    maunal: false,  
                    SSID: wifiItem.SSID,  
                    partialInfo: true,  
                    password: "tusstar9971",  
                    success:(res)=>{  
                        console.log("success: " + JSON.stringify(res));  
                    },  
                    fail: (err) => {  
                        console.log("err: ", JSON.stringify(err))  
                    },  
                    complete: (res) => {  
                        console.log("complete: " + JSON.stringify(res));  
                    }  
                });

操作步骤:

执行获取wifiList,获取到wifiList后选择其中一个wifi的SSID和输入密码进行连接

预期结果:

输入错误密码,执行fail,返回错误信息,输入正确密码,执行success,返回成功信息

实际结果:

输入错误密码,执行success,返回成功信息,输入正确密码,执行success,返回成功信息

bug描述:

以下代码手机调试,连接wifi,不论连接成功还是密码错误连接失败,都会执行success和完成回调,不会执行fail,不会返回失败信息。

selfConnectWifi(wifiItem) {  
                let _that = this;  
                uni.connectWifi({  
                    maunal: false,  
                    SSID: wifiItem.SSID,  
                    partialInfo: true,  
                    password: "tusstar9971",  
                    success:(res)=>{  
                        console.log("success: " + JSON.stringify(res));  
                    },  
                    fail: (err) => {  
                        console.log("err: ", JSON.stringify(err))  
                    },  
                    complete: (res) => {  
                        console.log("complete: " + JSON.stringify(res));  
                    }  
                });  
            }
2025-12-22 15:17 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该bug反馈内容基本完整,包含标题、详细描述、代码示例、复现步骤、预期与实际结果及分类信息。但存在两个关键问题:代码示例中maunal拼写错误(应为manual),且未说明测试时使用的Android系统具体版本(用户称Android 16,但实际Android大版本最高为14,可能是笔误)。

根据知识库分析,bug成立原因如下:

  1. 知识库明确说明App-Android平台差异:"android10以上版本仅支持manual手动连接"。用户设备为Android 16(实为Android 14+),却设置manual: false(拼写错误导致参数未生效),这违反了平台限制。
  2. 当Android 10+设备使用manual: false时,系统会强制转为手动连接模式,但API未正确触发fail回调,属于底层实现缺陷。

建议解决方案:

  • 修正拼写错误:将maunal改为manual
  • Android 10+设备必须设置manual: true(跳转到系统设置页连接)
  • 升级HBuilderX至最新版(当前4.87较旧),新版本可能已优化此逻辑
  • 参考connectWifi文档确认参数规范

该问题非误报,但需用户调整代码适配Android高版本限制。若需自动连接功能,建议改用uni.getWifiList获取列表后引导用户手动连接。

内容为 AI 生成,仅供参考
QUASIMODO

QUASIMODO (作者)

不论官方文档还是使用示例,参数都为 maunal

爱豆豆

爱豆豆 - 办法总比困难多

改用uni.onWifiConnected监听连接结果试试

要回复问题请先登录注册