最近在做一个新需求,就是针对开机欢迎引导页,当连接如星巴克,KFC,地铁上等公共场所的 WIFI 时,都需要 认证 功能,而我要调起这个 认证 页面呈现给用户,登陆任何网页会跳转到 wifi 认证 页面,输入账号密码,点击验证,能够验证 wifi ,并保证手机网络能正常使用。某些手机管家软件在手机连接上CMCC等 wifi 时,会弹出通知栏提示跳转到 web view去进行portal验证。而我由于各种限制原因,并不 前言有时候会遇到个很蛋疼的问题,访问网络时候代码的逻辑时若果当前网络连接就访问,否则就不访问。这时候如果不想在具体的代码逻辑 添加一些判断的话,遇到手机连接到需要 认证 登陆的 wifi 的情况就吃屎了。这种需要登陆的 wifi 一般就是在我们发任何一个HTTP请求时候重定向到它的登录界面。这时候我想知道我是不是连接到了这样的 wifi 该怎么呢?其实Google提供了关于HttpURLConnection在这种情 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 二、2开头 2xx (成功)表示成功处理了请求的状态代码。代码 说明 200 (成功) 服务器已成功处理了请求... 在 Android ,我们如果想知道周围的 WIFI 热点 ,以及这些 认证 方式怎么办? 答案是我们可以用 Wifi Manager.getScanResults来获取当前扫描出的 热点 用ScanResult.capabilities来获取 认证 方式等。 private fun getCurrent Wifi () { mScanResult.clear() //获取当前扫描出的 热点 val scanResult = wifi Manager.scanResults Android 网络加密类型WPA3,比WPA和WPA2 安全性强一下;有些客户强制要求支持WPA3,那么就需要系统进行一些适配了。 Android 手机上 热点 分享显示的安全性部分手机可以选择WPA3,比如红米12( Android 12),一加Ace2( Android 13);但是其他很多手机都没有选择加密类型,比如Nova6( Android 12)、红米( Android 10),谷歌Piex4( Android 13)。以前只分析过 Android 11 ,这里发现 Android 13 有些区别,记录一下。/** Wifi 根据项目出货地区常见 WiFi 认证 有 WFA 认证 :WFA ( WiFi 联盟) 认证 、CE(欧盟) 认证 、CTA( 国质量) 认证 、FCC(美国) 认证 、GCF(欧洲运营商) 认证 。如CE 认证 ,需要提供当前项目过CE 认证 具体测试模块,支持测试哪些功能。如日本软银,北美大T。1.实验室都测试pass过后,会提供一个测试pass 报告,同步提供 认证 证书,或者 认证 标签。1.实验室拿到 认证 机器,根据 认证 报告进行逐一测试各个功能,并记录相应测试结果报告。1.客户或者 认证 接口人发起 认证 请求、 认证 计划和相应 认证 实验室。 static Wifi Configuration create Wifi Config(String SSID, @ Wifi SecurityType int wifi CipherType, String password, boolean hiddenSSID) { Wifi Configuration wifi Con...