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

uni-app获取手机当前连接的WIFI名称

一、需要增加安卓访问用户位置与信息的权限

1.manifest.json文件中增加对应权限

            /* android打包配置 */"android" : {"permissions" : ["<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>","<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>"]},

二、尝试动态获取用户位置信息权限

    // 请求位置权限requestLocationPermission() {if (plus.os.name.toLowerCase() === "android") {plus.android.requestPermissions(["android.permission.ACCESS_FINE_LOCATION","android.permission.ACCESS_COARSE_LOCATION",],function(result) {console.log("位置权限请求结果:", result);},function(error) {console.error("位置权限请求错误:", error);});}},

三、使用uniapp的getNetworkType先获取网络状态,判断是否连接了wifi

   uni.getNetworkType({success: (res) => {if (res.networkType === "wifi") {// 已连接WiFi,尝试获取SSIDthis.getWifiSSID();} else {// 未连接WiFiconsole.log('未连接WiFi网络');}},fail: (err) => {console.error('获取网络类型失败:', err);},});

四、获取WiFi SSID

    getWifiSSID() {// console.log('尝试获取WiFi SSID');if (window.plus) {try {// 主窗体var MainActivity = plus.android.runtimeMainActivity();// 上下文var Context = plus.android.importClass("android.content.Context");// 导入WIFI管理和WIFI信息的classplus.android.importClass("android.net.wifi.WifiManager");plus.android.importClass("android.net.wifi.WifiInfo");// 获取WIFI管理实例var wifiManager = MainActivity.getSystemService(Context.WIFI_SERVICE);// 获取当前连接WIFI的信息var info = wifiManager.getConnectionInfo();// 获取当前WIFI连接的SSID (WIFI名称)var ssid = info.getSSID();console.log('原始SSID:', ssid);// SSID带双引号,需要处理一下ssid = ssid.replace(/(^\"*)|(\"*$)/g, "");console.log('处理后SSID:', ssid);// 处理<unknown ssid>的情况if (ssid && ssid !== "<unknown ssid>") {console.log('WiFi SSID:', ssid, '是否为公司WiFi:', this.isInCompanyWifi);} else {console.log("无法识别WiFi名称");}} catch (e) {console.error('获取WiFi SSID异常:', e);}}},
http://www.lryc.cn/news/584866.html

相关文章:

  • 小皮面板搭建pikachu
  • 如何将文件从OPPO手机传输到电脑
  • GNhao,获取跨境手机SIM卡跨境通信新选择!
  • 手机恢复出厂设置怎么找回数据?Aiseesoft FoneLab for Android数据恢复工具分享
  • 【Python3教程】Python3高级篇之CGI编程
  • linux系统-----Redis主从复制
  • Hadoop 用户入门指南:驾驭大数据的力量
  • 传输层协议UDP原理
  • 【数据库基础 1】MySQL环境部署及基本操作
  • 工作间期休息一下
  • 重振索尼复古微型电脑——计划以OrangePi CM5 作为主板升级
  • php 如何通过mysqli操作数据库?
  • 平板柔光屏与镜面屏的区别有哪些?技术原理与适用场景全解析
  • Linux操作系统从入门到实战:怎么查看,删除,更新本地的软件镜像源
  • Linux权限的概念
  • 一文速览DeepSeek-R1的本地部署——可联网、可实现本地知识库问答(附教程)
  • 飞算Java AI:专为 Java 开发者打造的智能开发引擎
  • Linux:多线程---同步生产者消费者模型
  • 【Linux仓库】命令行参数与环境变量【进程·伍】
  • 【前端】【Echarts】【zrender】从入门到多路径信号流动动画实战
  • 飞算JavaAI:革新Java开发的智能助手
  • Linux kernel devm_gpiod_get()函数详解
  • 彻底解决JavaFx在Linux中文无法正常显示的问题(究其根本原因)
  • 飞书CEO谢欣:挑战巨头,打造AI新时代的Office
  • 锁的艺术:从Mutex到ReentrantLock,掌握并发编程的脉搏
  • 分布式系统高可用性设计-负载均衡与容错机制深度解析
  • Shader面试题100道之(81-100)
  • 模拟实现unordered_map
  • 如何使用 Python 删除 Excel 中的行、列和单元格 – 详解
  • 如何从0开始构建自己的第一个AI应用?(Prompt工程、Agent自定义、Tuning)