?getCurWifiInfo

2022-06-21 14:25 更新

獲取當(dāng)前已連接的wifi的信息,由于ios的安全機(jī)制,ios只能獲取ssid、bssid和ipAddr。對(duì)于Android 9.0及以上的版本,要想能夠獲取ssid(ssid就是wifi名字)必須進(jìn)行以下2步操作。第一:必須打開手機(jī)的gps,目前手機(jī)只能手動(dòng)打開gps,開發(fā)者可用代碼打開手機(jī)設(shè)置中g(shù)ps開關(guān)的界面引導(dǎo)用戶打開gps,有關(guān)打開gps的功能請(qǐng)參考模塊store中的gps模塊。第二:在apicloud的"云編譯"界面編譯時(shí)注意給app設(shè)置"位置"權(quán)限(在"平臺(tái)"兩個(gè)字右邊的安卓小機(jī)器人圖片所在的方框內(nèi)可以設(shè)置 位置權(quán)限)。Android9.0及以上除了ssid外的其他信息不需要打開gps就能獲取。

關(guān)于iOS12及以上使用該接口的說明

在iOS12及以上使用該接口必須按照以下2個(gè)步驟才能使用:

1、登錄蘋果開發(fā)者賬號(hào)后臺(tái)https://developer.apple.com,找到App IDs選項(xiàng),在該項(xiàng)下找到Access WiFi Information選項(xiàng)并勾選上,如下圖,表示該App需要獲取wifi信息。然后重新生成項(xiàng)目的描述文件(Provisioning Profiles),具體操作見官方文檔 iOS證書及描述文件制作流程 https://docs.apicloud.com/Dev-Guide/iOS-License-Application-Guidance 。

2、配置 entitlement 文件。在widget\res(如果沒有res文件夾則要先創(chuàng)建res文件夾)下創(chuàng)建文件名為UZApp.entitlements的文件,該文件需要和widget代碼一起進(jìn)行云編譯,UZApp.entitlements內(nèi)容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.developer.networking.wifi-info</key>
    <true/>
</dict>
</plist>

getCurWifiInfo(callback(ret))

callback(ret)

ret:

  • 類型:JSON對(duì)象
  • 描述:返回當(dāng)前已連接的wifi的信息
  • 內(nèi)部字段:

//ios只能獲取ssid、bssid和ipAddr。
{
    "result": 1,//獲取成功狀態(tài) 0失敗  1成功
    "data": //獲取成功時(shí)放回data字段 
    {
        "encrypt": "[WEP][ESS]", // 安全性
        "status":"已連接",//連接狀態(tài)
        "rssi": -45, // 信號(hào)強(qiáng)度
        "linkSpeed": 54,//連接速度
        "ipAddr": "192.168.1.87",//IP地址
        "bssid": "70:f9:6d:37:c1:72",//Ap MAC
        "networkId": 12,//網(wǎng)絡(luò)ID
        "ssid": "AP-GWWG",//wifi名字
        "hiddenSSID": false,//是否隱藏wifi名字
        "hardAddr": "A0:86:C6:0C:07:4A",//本機(jī)MAC
        "name": "wlan0/wlan0",//Wifi接口名  Name和DisplayName
        "netmask": "255.255.255.192",////網(wǎng)絡(luò)掩碼
        "gateway": "192.168.1.126",//網(wǎng)關(guān)
        "dns1": "202.103.224.68", //DNS1
        "dns2": "202.103.225.68"  //DNS2
    },
    "msg":"wifi已關(guān)閉" //獲取失敗時(shí)返回msg字段,msg為獲取錯(cuò)誤的原因
}

示例代碼

var wifi = api.require('wifiMgr');
wifi.getCurWifiInfo(function(ret, err){
     alert(JSON.stringify(ret));
     });

補(bǔ)充說明

可用性

iOS系統(tǒng),Android系統(tǒng)

可提供的1.0.0及更高版本

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)