wifi 连接打卡 暂定流程
1 后台管理系统 设置wifi名称及BSSID
2 移动端利用如下代码获取当前手机连接的wifi 然后获取wifi名称和BSSID 与后台进行校验 然后完成业务
getWifi(){
// 主窗体
var MainActivity = plus.android.runtimeMainActivity()
// 上下文
var Context = plus.android.importClass('android.content.Context')
// 导入WIFI管理 和 WIFI 信息 的class
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的信息
var info = wifiManager.getConnectionInfo()
// 获取当前 WIFI 连接的 SSID (WIFI 名称) 获取到的名称是带双引号的,处理一下
var ssid = info.getSSID()
ssid = ssid.replace(/(^\"*)|(\"*$)/g, "")
console.info("ssid=>"+ssid)
// 获取当前 WIFI 连接的 BSSID (唯一标识)
var bssid = info.getBSSID()
console.info("bssid=>"+bssid)
// 获取当前 WIFI 连接的 MAC地址
var mac = info.getMacAddress()
console.info("mac=>"+mac)
// 获取当前 WIFI 连接的 ip地址
var i = parseInt(info.getIpAddress())
var ipStr = (i & 0xFF) + "." +
((i >> 8) & 0xFF) + "." +
((i >> 16) & 0xFF) + "." +
(i >> 24 & 0xFF);
console.info(ipStr)
// 获取当前设备能看到的所有wifi列表
var resultList = wifiManager.getScanResults(),
len = resultList.size()
for(var i = 0; i < len; i++) {
console.log(resultList.get(i).plusGetAttribute('SSID'))
}
},