提交 54d4e570 编写于 作者: 杜庆泉's avatar 杜庆泉

完善部分文档

上级 5539c89d
......@@ -8,22 +8,83 @@ Wi-Fi功能模块
登录苹果开发者网站,在“Certificates, Identifiers & Profiles”页面选择“Identifiers”中选择对应的App ID,确保开启“Access WiFi information”,保存后重新生成profile文件
- iOS13及以上系统,获取当前连接的Wi-Fi信息需要先获取系统定位权限,因此在iOS13及以上系统使用此接口时,会触发定位权限申请的弹窗
### App-Android平台注意事项
- 如果是自定义基座,需要具备下面的权限
```
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
```
### 公共错误代码
|错误码 |错误信息 |说明 |
|--- |---- |------ |
|0 |ok |正常 |
|12000 |not init |未先调用 startWifi 接口 |
|12002 |password error Wi-Fi |密码错误 |
|12013 |wifi config may be expired |系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试,仅 Android 支持 |
### uni.startWifi
初始化Wi-Fi模块。
#### 参数
Object object
|属性|类型|默认值|必填|说明|
|---|----|------|----|---|
|success|function|否|接口调用成功的回调函数|
|fail|function|否|接口调用失败的回调函数|
|complete|function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
### uni.stopWifi
关闭 Wi-Fi 模块。
#### 参数
Object object
|属性|类型|默认值|必填|说明|
|---|----|------|----|---|
|success|function|否|接口调用成功的回调函数|
|fail|function|否|接口调用失败的回调函数|
|complete|function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
### uni.getConnectedWifi
获取已连接的 Wi-Fi 信息。
Object object
|属性|类型|默认值|必填|说明|
|---|----|------|----|---|
|success|function|否|接口调用成功的回调函数|
|fail|function|否|接口调用失败的回调函数|
|complete|function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
### uni.getWifiList
请求获取 Wi-Fi 列表。wifiList 数据会在 onGetWifiList 注册的回调中返回。
......
......@@ -142,6 +142,7 @@ class UniWifiInfo {
* 根据connectInfo 链接信息对wifi数据结构进行初始化
*/
wrapConnectInfo(connectInfo: WifiInfo): void {
if (connectInfo.getBSSID() == null) {
return
}
......@@ -153,33 +154,15 @@ class UniWifiInfo {
}
this.SSID = s;
}
this.BSSID = connectInfo.getBSSID();
//Android返回的值是-100~0,而微信API规范是0~100,值越大信号越好,需要+100拉齐
this.signalStrength = connectInfo.getRssi() + 100;
this.frequency = connectInfo.getFrequency();
this.BSSID = connectInfo.getBSSID();
//Android返回的值是-100~0,而微信API规范是0~100,值越大信号越好,需要+100拉齐
this.signalStrength = connectInfo.getRssi() + 100;
this.frequency = connectInfo.getFrequency();
}
// toUTSJSON(partialInfo:boolean):UTSJSONObject{
// if(partialInfo){
// var retWifi = {
// SSID:this.SSID
// }
// return retWifi
// }else{
// var retWifi = {
// SSID:this.SSID,
// BSSID:this.BSSID,
// secure:this.secure,
// signalStrength:this.signalStrength,
// frequency:this.frequency
// }
// return retWifi
// }
// }
}
/**
......@@ -564,8 +547,6 @@ export function connectWifi(option: WifiConnectOption) {
let wifiConfigration = wrapWifiConfiguration(scanWifiInfo.SSID,option.password,scanWifiInfo.securityType);
wifiConfigration.BSSID = scanWifiInfo.BSSID
console.log("option.password === " + option.password);
console.log("wifiConfigration.BSSID === " + wifiConfigration.BSSID);
let wifiManager: WifiManager =
UTSAndroid.getAppContext()!.getSystemService(Context.WIFI_SERVICE) as WifiManager
......@@ -713,7 +694,6 @@ export function getConnectedWifi(option: GetConnectedWifiOptions) {
errCode: 12000,
errMsg: "getConnectedWifi:fail:not invoke startWifi",
errSubject:"uni-getConnectedWifi",
wifi:wifiInfo
}
if (Global.mReceiver == null) {
......@@ -746,21 +726,29 @@ export function getConnectedWifi(option: GetConnectedWifiOptions) {
const winfo = wm.getConnectionInfo();
// 判断一下是否wifi 关闭了
// 封装成数据对象
console.log("option.partialInfo === " + option.partialInfo);
wifiInfo.wrapConnectInfo(winfo);
if(wifiInfo.BSSID == null || zeroCountNum(wifiInfo.BSSID) > 3){
res.errCode = 12005
res.errMsg = "getConnectedWifi:fail:wifi is disable"
res.wifi = wifiInfo;
option.fail?.(res)
option.complete?.(res)
return
// 判断一下是否wifi 关闭了
if(option.partialInfo!){
let ret = {
SSID : wifiInfo.SSID
}
res['wifi'] = ret;
}else{
if(wifiInfo.BSSID == null || zeroCountNum(wifiInfo.BSSID) > 3){
res.errCode = 12005
res.errMsg = "getConnectedWifi:fail:wifi is disable"
option.fail?.(res)
option.complete?.(res)
return
}
res['wifi'] = wifiInfo;
}
res.errCode = 0
res.errMsg = "getConnectedWifi:ok"
res.wifi = wifiInfo;
option.success?.(res)
option.complete?.(res)
return
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册