欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

利用微信小程序API获取所在位置周围的WIFI信息

程序员文章站 2022-06-11 11:10:04
...

前言

这是我的第一篇博客,内心有点激动紧张。
为什么要写这一篇呢?
因为最近在跟老师做一个基于WIFI的室内定位的项目,里面需要获取周围WIFI信息,这困惑了我很长一段时间,查了很多百度,看了很多博客,可是还是不是很明白。最后是我的小伙伴帮我写了出来。最近研究了一下,感觉懂了很多,所以想着写篇博客来加深印象。

正文

先贴出我的代码

wx.startWifi({
      success(res){
        wx.getWifiList({
          success(e){
            wx.onGetWifiList(function (res) {
                console.log(res.wifiList)//其他一些业务代码
            })
          }
        })

看着很懵逼吧,一层套一层地。我一开始看着一层套一层的就感觉很混乱,不过仔细一看,其实还是挺简单的。

接下来就是我的理解啦。

首先需要用到WIFI ,第一步当然就是初始WIFI模板。
初始WIFI模板用的就是wx.startWifi(Object object)这个API

下图是官方文档的介绍
利用微信小程序API获取所在位置周围的WIFI信息
初始模板之后就可以做其他事情啦。

下面我想先从低层开始说。
最底层是wx.onGetWifiList(function callback),这是监听获取到WIFI列表数据事件。它里面的参数res就包含了所获取到的WIFI的信息。
下图是官方文档对wx.onGetWifiList(function callback)的介绍。
利用微信小程序API获取所在位置周围的WIFI信息

然后想要监听获取WIFI列表信息的话,就得先请求
请求用的是wx.onGetWifiList(Object object)。
下面是官方文档对 wx.onGetWifiList(Object object)的介绍
利用微信小程序API获取所在位置周围的WIFI信息
可以很容易的就理解,请求获取成功的话就对它进行监听获取

wx.getWifiList({
          success(e){
            wx.onGetWifiList(function (res) {
                console.log(res.wifiList)//其他一些业务代码
            })

加上初始WIFI模板的API就得到最终代码啦~

哦对了!还有一件重要的事情。
安卓调用 wx.onGetWifiList(Object object)前需要用户授权是scope.userLocation。
所以记得要在app.json加上下面这段代码

"permission": {
    "scope.userLocation": {
      "desc": "需获取当前位置"
    }
  }

结束语

人生第一篇博客就这么写完啦。
如果哪里有错误,欢迎各位指出来,让我们互相交流,一起学习吧~

相关标签: 小程序