uniapp获取手机可接收的所有的WiFi名称与信号强度

这篇具有很好参考价值的文章主要介绍了uniapp获取手机可接收的所有的WiFi名称与信号强度。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章目录

  • 前言
  • 一、代码及注释
  • 总结

前言

关键词:HBuilder uniapp wifi RSSI SSID

最近做项目有一个需求,要求用HBuilder uniapp做一个app显示手机可接收的WiFi名称和对应的场强(信号强度),百度找了一圈,只找到了关于WiFi名称的一些资料,于是根据一篇文章修改了一下(附在文末),最终很nice的解决了我的问题。有一定的参考价值,感兴趣的小伙伴们可以参考一下。(9.6号)

一、代码及注释

index.vue 代码如下:
 

<template>
    <view>
        home---{{title}}
        <button type="default" @click="getWifiInfo">获取wifi信息</button>
    </view>
</template>

<script>
    // const gbWiFi = uni.requireNativePlugin('Googbuild-WIFI');
    const FvvUniWifiHelper = uni.requireNativePlugin("Fvv-UniWifiHelper");
    export default {
        data() {
            return {
                title: "",
                wifiArray:[],
            }
        },
        onLoad() {
            
        },
    
        methods: {
            getWifiInfo () {
                //在手机上显示
                uni.showModal({
                    title: "alert 弹窗标题",
                    //content: "弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内",
                    content: this.getWiFiIP(),
                    showCancel: false,
                    confirmText: "确定",
                    confirmColor: "#00ffff",
                    success(res) {
                        if (res.confirm) {
                            console.log('确认')                                   
                        }
                    }
                })    
            },
            // 获取WiFi信息
            getWiFiIP() {
                // MainActivity
                var MainActivity = plus.android.runtimeMainActivity()
                // Context
                var Context = plus.android.importClass('android.content.Context')
                // WiFi 相关包  
                plus.android.importClass("android.net.wifi.WifiManager")
                plus.android.importClass("android.net.wifi.WifiInfo")
                plus.android.importClass("android.net.wifi.ScanResult")
                plus.android.importClass("java.util.ArrayList")
                // WiFi 管理实例
                var wifiManager = MainActivity.getSystemService(Context.WIFI_SERVICE)
                // 开启 WiFi
                // wifiManager.setWifiEnabled(true)
                // 当前连接 WiFi 信息 
                var wifiInfo = wifiManager.getConnectionInfo()
                
                console.log(wifiInfo.toString())//打印当前连接 WiFi 的所有信息
                
                var wifirssi = wifiInfo.getRssi()// 获取当前链接 WiFi 的信号强度
                console.log(wifirssi)//打印 WiFi 的信号强度
                
                var ssid = wifiInfo.getSSID()// 获取当前 WIFI 连接的 SSID (WIFI 名称)  
                ssid = ssid.replace(/(^\"*)|(\"*$)/g, "")  
                console.log(ssid)//打印 WIFI 名称
                console.log(ssid+","+"信号强度:"+wifirssi)
                
                //注意 getConnectionInfo() 与 getScanResults() 的区别
                var resultList = wifiManager.getScanResults(),//扫描得到的wifi信号集合
                    len = resultList.size() 
                var wifiScanResults = '' //定义wifiScanResults
                console.log(resultList)
                
                //注:获取resultList中的场强信息用的是 level 而不是 RSSI
                
                for(var i = 0; i < len; i++) {
                  console.log(resultList.get(i).plusGetAttribute('SSID') +" 信号:"+resultList.get(i).plusGetAttribute('level'))
                  //将每一个ssid与rssi 都添加到wifiArray数组中,用于绑定显示,根据个人业务取舍 wifiArray=[{name:WiFi的SSID}]
                  let oneWiFi={
                      name:resultList.get(i).plusGetAttribute('SSID'),
                         signal:resultList.get(i).plusGetAttribute('level')
                  }
                  this.wifiArray.push(oneWiFi);
                  wifiScanResults = wifiScanResults + ',' + this.wifiArray[i].name + ' 信号:'+ this.wifiArray[i].signal + "\n";//打印内容
                }
                return wifiScanResults//返回
                
                
            }
                
        },
        
    }
</script>

<style>

</style>


总结

(有不懂的可以私信我,我会在文章中进行补充)

以上就是本文的主要内容,有错误请各位大佬指正。

 附参考文章:uni-app获取手机当前连接的WIFI名称_yjl23332的博客-CSDN博客_uniapp获取wifi名称文章来源地址https://www.toymoban.com/news/detail-513618.html

到了这里,关于uniapp获取手机可接收的所有的WiFi名称与信号强度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 提升WIFI信号强度(提高网速)的10大方法

    WIFI无线网络几乎已经成为现代人生活中的必备元素,你的智能手机、平板、电脑甚至是电视都需要上网。当提到提高“网速”时,基本上是需要从两个方面来考虑,一是提升宽带的带宽,二是加强无线信号。由于无线信号是有无线路由器产生的,而路由器又因为品牌或是性能

    2024年02月06日
    浏览(38)
  • pandas dataframe获取所有行名称与列名称

    pandas中,dataframe获取行名称,可以有如下两种方式。 df.index为RangeIndex类型,df.index.values属性会输出一个numpy.ndarray类型的数组,将这个数组转化为list,就可以得到所有行名称的list。 该方法的输出为: 更多时候,我们是要想获得dataframe的列名,有如下三种方式。 第一种方式

    2024年02月13日
    浏览(50)
  • Android Studio API 33 获取当前连接的WIFI名称

    常规流程 以下内容在 API 33 成功实现,低版本API还请自行尝试(仅推荐 API 29 - 33 用户食用) 先(至少)添加以下权限到你的 AndroidManifest.xml 文件 在需要使用的Activity类中,添加以下代码: 从 Android 10 (API 29)开始,需要确保 已经获取了 定位权限 。 requestPermissions() 函数会请

    2024年02月14日
    浏览(43)
  • 电脑、手机wifi搜不到信号一种解决方法(搜不到wifi信号)

    如果你真的遇到过,希望你当时没有冲动把手机摔了,问题可能真的不在你的手机,而在无线路由上。 在说明问题之前先看看你的路由是怎么设置的: 如果你没有特殊修改的话,“频段”这一项应该默认是“自动选择”或者是“6”,不同的路由可能不尽相同。 如果你的正好

    2024年02月06日
    浏览(49)
  • python pandas 获取Excel文件下所有的sheet名称,表格数据

    方法1: 一定要加sheet_name=None,才能读取出所有的sheet,否则默认读取第一个sheet,且获取到的keys是第一行的值 方法2:

    2024年02月13日
    浏览(53)
  • [开源工具]Win10/11/8/7 获取笔记本电脑连接过的WIFI名称和密码[开箱可用]

    1.打开命令提示符(管理员身份) 首先打开 Windows 搜索功能,输入 CMD 即可找到「命令提示符」,请不要直接打开,必须以「管理员身份运行」才能导出 WIFI 资料,右侧可找到以管理员身份运行的功能键 2.输入netsh wlan show profile 输入 netsh wlan show profile 这个命令,并按下 Enter 键(

    2024年02月02日
    浏览(50)
  • 获取本地电脑连接的所有WIFI密码(适合Windows 11/10/8/7)

    如果你的心入职同事问你公司WIFI密码是多少,恰好这时你也忘记密码,用次方法可以实现得到WIFI密码。 如果你忘记现在在WIFI密码,也可以用此方法获取。 1. 使用管理员权限打开 cmd.exe 2. 获取本机所有连接的 WIFI 用户配置   3. 将所有 WIFI 配置保存至指定目录下 4. 查看文件夹

    2023年04月18日
    浏览(79)
  • 在uniapp小程序中获取周边WiFi列表,并且显示已连接WiFi

     详细代码如下:    使用 Array.prototype.sort() 方法对 this.wifiList 进行排序。排序的规则是,如果Wi-Fi的SSID与当前已连接的Wi-Fi的SSID相同,则将其排在前面;如果Wi-Fi的SSID与当前已连接的Wi-Fi的SSID不同,则按原始顺序排序。 Array.prototype.sort() 方法接受一个比较函数作为参数,该

    2024年02月09日
    浏览(46)
  • 使用uniapp实现小程序获取wifi并连接

    因业务需求,需要在小程序实现发现wifi和连接wifi。但由于Andriod和IOS有差异,所以实现起来有所区别。 先看官方文档 https://developers.weixin.qq.com/miniprogram/dev/framework/device/wifi.html 把连接基础流程了解后,发现二者流程和总结为: startWifi: 初始化 Wi-Fi 模块 getWifiList: 请求获取周边

    2024年02月21日
    浏览(27)
  • 极路由怎么调信号强度如何设置穿墙模式

    极路由(hiWiFi)的穿墙模式是其宣传的一大特点,但是买回去发现极路由穿墙效果并不好啊,这是怎么回事?极路由支持无线发射功率调节,共有强、中、环保模式(低)和穿墙模式四个选项。下面跟下载吧小编来看看极路由是怎么调穿墙模式的。 极路由无线功率设置步骤

    2024年02月07日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包