Flutter开发中如何获取自身开启热点的IP地址
获取本地热点IP地址的通用解决方案
桌面端系统原生操作方法
无需安装任何第三方插件,直接通过系统自带工具即可查询:
- Windows系统:打开命令提示符,执行
ipconfig,在返回结果中找到描述带有「Microsoft Wi-Fi Direct Virtual Adapter」的虚拟网卡条目(通常名称为「本地连接* 数字」格式),对应条目下的IPv4地址就是设备热点的IP。 - macOS系统:打开终端,执行
ifconfig,找到bridge100接口(热点默认桥接接口),对应inet字段后的地址就是热点IP。 - Linux系统:执行
ip addr show,找到热点对应的虚拟网卡(通常名称为wlan0_ap或者ap0),inet字段后的地址即为目标IP。
开发场景实现方案
开发时直接调用系统命令解析结果即可,无需依赖额外第三方插件:
- Node.js环境示例(Windows平台):
const { exec } = require('child_process'); exec('ipconfig', (err, stdout) => { const reg = /无线局域网适配器 本地连接\* \d+[\s\S]*?IPv4 地址[ .]*: ([\d.]+)/ const match = stdout.match(reg) if (match) console.log('热点IP:', match[1]) })
- Python环境示例(Linux平台):
import subprocess import re result = subprocess.run(['ip', 'addr', 'show', 'ap0'], capture_output=True, text=True).stdout ip = re.search(r'inet (\d+\.\d+\.\d+\.\d+)', result).group(1) print(f'热点IP: {ip}')
多数通用IP查询插件只针对物理网卡做适配,热点使用的是系统生成的专用虚拟网卡,插件没有做特殊匹配才会无法返回结果,直接调用原生系统命令解析是目前最稳定的实现方案。
内容的提问来源于stack exchange,提问作者Ianwazowski
相关产品推荐
相关产品推荐

