我正在使用Cordova CLI(不是PhoneGap)编写一个跨平台的移动应用程序,以控制IoT设备。如何显示附近的Wifi网络列表,以便用户可以选择并连接到它?
我曾经尝试过WifiWizard和WifiWizard2,但他们似乎对iOS的支持有限。并且Cordova's core Connection plugin只能显示用户是否已连接wifi,蜂窝网络或没有连接。
我还找到了一些与wifi相关的Cordova插件,这些插件似乎已失去对iOS的支持,例如NativeSettingsOpener。
我已经尝试过WifiWizard2基本功能:
WifiWizard2.getConnectedSSID().then(function(network) {
alert(network);
}).catch(function(error) {
alert('oops: ', error);
});
当我在浏览器上的localhost上运行该网络时,它会正确提醒我未连接到网络。
我希望它也可以在iOS上运行。但是,当我使用Cordova为iOS编译该功能后,使该功能在iOS上运行时,它既不会给我网络,也不会给我带来错误。
答案 0 :(得分:0)
您必须异步加载扫描功能。这是使用离子和科尔多瓦的示例:
import { Component } from '@angular/core';
declare var WifiWizard2: any;
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
results = [];
info_txt = "";
async getNetworks() {
this.info_txt = "loading...";
try {
let results = await WifiWizard2.scan();
this.results = results;
this.info_txt = "";
} catch (error) {
this.info_txt = error;
}
}
}