当前位置: 首页 > news >正文

HarmonyOS通过wifiManager来连接Wi-Fi - 指南

本文介绍了在HarmonyOS应用开发过程中,如何通过wifiManager来连接Wi-Fi。

Wi-Fi及STA模式简介

无线局域网(Wireless Local Area Networks,WLAN),是通过无线电、红外光信号或者其他技术发送和接收数据的局域网,用户可以通过WLAN实现节点之间无物理连接的网络通讯。常用于用户携带可移动终端的办公、公众环境中。

Wi-Fi(Wireless Fidelity),是一种基于无线电波的通信技术,用于设备之间传输数据,使得用户可以无需使用有线连接即可访问互联网和共享数据。

WLAN系统为用户提供接入WLAN网络功能(STA模式)、点对点的数据传输功能(P2P模式)和热点分享功能(AP模式),让应用可以通过WLAN和其他设备互联互通。

Wi-Fi STA模式(Station Mode,站点模式)是无线设备作为客户端接入无线局域网(WLAN)的工作模式。在该模式下,设备(如手机、电脑、平板等)通过连接到接入点(AP,Access Point)或无线路由器,实现对网络的访问。

应用实现

应用实现步如下:

  1. 建立Wi-Fi连接
  2. 导入需要的Wi-Fi模块。
  3. 开启设备的Wi-Fi。
  4. 需要SystemCapability.Communication.WiFi.STA系统能力。
  5. 需要申请权限ohos.permission.GET_WIFI_INFOohos.permission.SET_WIFI_INFO

示例代码:

import { wifiManager }  from '@kit.ConnectivityKit';
@Entry
@Component
struct Index {
@State ssid: string = ''
@State securityType: string = ''
@State password: string = ''
build() {
Column() {
Row() {
Text('WiFi名称:')
TextInput({ text: this.ssid })
.width('80%')
.onChange((value) => {
this.ssid = value
})
}.margin(10)
Row() {
Text('密码:')
TextInput({ text: this.password })
.type(InputType.Password)
.width('80%')
.onChange((value) => {
this.password = value
})
}.margin(10)
// 操作按钮
Row() {
Button('连接该网络')
.type(ButtonType.Capsule)
.fontColor(Color.White)
.margin(10)
.onClick(() => {
// 连接到WiFi
this.connectToWifi()
})
}
.width('100%')
.height('10%')
.justifyContent(FlexAlign.Center)
}
.height('100%')
.width('100%')
.justifyContent(FlexAlign.Center)
}
// 连接到WiFi
private connectToWifi() {
let config:wifiManager.WifiDeviceConfig = {
ssid : this.ssid,
preSharedKey : this.password,
securityType : 3
}
console.info('config:' + JSON.stringify(config));
// 添加候选网络配置
wifiManager.addCandidateConfig(config).then(result => {
// 连接至网络
console.info('addCandidateConfig result:' + JSON.stringify(result));
wifiManager.connectToCandidateConfig(result);
}).catch((err: number) => {
console.error('failed:' + JSON.stringify(err));
});
}
}

权限设置如下:

"requestPermissions": [
{
"name": "ohos.permission.SET_WIFI_INFO",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "inuse"
}
},
{
"name": "ohos.permission.GET_WIFI_INFO",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "inuse"
}
}
]

运行应用,界面效果如下。

输入Wi-Fi账号、密码,点击应用“连接该网络”,界面效果如下。

在浏览器里面访问被访问的应用,界面效果如下。

完整示例详见文末链接《跟老卫学HarmonyOS开发》中“ArkTSWifiManagerConnectToWifi”。

参考引用

加入鸿蒙生态,共建万物互联。以下是鸿蒙应用开发常用教程。

http://www.jsqmd.com/news/82612/

相关文章:

  • AI Agent系列-Google AI Agent学习-互联互通:人与 Agent、Agent 与 Agent、Agent 与货币
  • 2025芳碳混编布十大专业供应商排行榜,精选芳碳混编布生产厂 - myqiye
  • AI Agent系列-Google AI Agent学习-Agent Ops:从“写完就跑”到“持续运营自治系统”
  • 拉曼光谱核心分析能力 - 品牌推荐大师
  • 富士康巨额投资印度制造业,聚焦AI与技术研发
  • SmartCrop.js 版本迁移终极手册:从1.x到2.x的完整升级宝典
  • 2025年沈阳公务员考试培训机构排行榜,售后完善的公考辅导企 - 工业推荐榜
  • 批量图片压缩神器:支持2GB大文件与万张并发处理
  • 2025闭式冷却塔风机优质供应商TOP5权威推荐:深度测评甄 - mypinpai
  • 2025公职考试培训专业机构TOP5权威推荐:售后完善的公考 - 工业品牌热点
  • 突破显存瓶颈:FLUX模型INT8量化实战指南
  • 2025年华东地区柔性振动盘加工厂TOP5推荐,优质供应商与 - myqiye
  • 2025年资质齐全的公务员培训品牌企业推荐,不错的公务员培训 - 工业推荐榜
  • 2025沈阳有名的公考培训企业TOP5权威推荐:甄选有实力的 - 工业推荐榜
  • 2025年沈阳高性价比的公考笔试培训企业推荐:口碑不错的公考 - 工业品牌热点
  • 沈阳公职培训机构哪家专业?公考培训机构哪家合适? - 工业品牌热点
  • 沈阳公职培训机构哪家专业?公考培训机构哪家合适? - 工业品牌热点
  • Open Interface:开启电脑全自动驾驶新时代
  • 拉格朗日插值
  • AI Agent系列-Google AI Agent学习
  • AI Agent系列-Google AI Agent学习
  • Stack-Chan机器人完整指南:从入门到精通
  • 2025年市面上靠谱的尘埃粒子计数器品牌排行榜,尘埃粒子计数器/尘埃粒子检测仪/尘埃粒子测试仪/激光尘埃粒子计数器公司推荐 - 品牌推荐师
  • RPCS3游戏汉化实战:从零配置到完美运行中文游戏
  • ProxyPool多环境实战:从开发到生产的高效部署指南
  • 佛山户外广告采购:2025年最新费用行情解析,航空广告/电梯框架广告/地铁站广告/高铁广告/地铁广告/公交车身广告户外广告门店排行 - 品牌推荐师
  • 短视频开源代码,使用json文件在后端存储数据
  • 基于SpringBoot + Vue的重型机械管理平台
  • 2025年国内立式离心泵推荐品牌/实力厂商/厂家直销/头部企业推荐! - 品牌推荐大师
  • MySQL索引优化与失效场景深度解析