Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I get WiFi Network information (SSID) in a Phonegap app?

I am making a Phonegap app. My requirement is to show different views to users depending on whether they are using a home network or a public network. Is there any plugin or any other way that can help to get the connected network information. (Network SSID).

Thanks.

like image 558
Varun Nayyar Avatar asked Jul 02 '15 10:07

Varun Nayyar


2 Answers

While WifiWizard is great, it seems that it's no longer being maintained on GitHub.

As a replacement, you can use WifiWizard2 which is under active development, as it supports the same methods:

cordova plugin add https://github.com/tripflex/WifiWizard2.git
WifiWizard2.getConnectedSSID(success, fail)
WifiWizard2.getConnectedBSSID(success, fail)
WifiWizard2.scan([options], success, fail)

WifiWizard2 seems to also support both Android and iOS.


However, if like me you also need to use the device's Hotspot or Wifi Tethering with Cordova, I recommend the cordova-hotspot-plugin package instead. The project is unfortunately discontinued; but for older Android API levels, it still seems to work.

This plugin supports a myriad of methods, full list available here.

like image 128
David Refoua Avatar answered Nov 02 '22 15:11

David Refoua


There is this plugin for Android and iOS :

cordova plugin add wifiwizard

If you want to get the current SSID of the network you are connected to:

function ssidHandler(s) {
    alert("Current SSID"+s);
}

function fail(e) {
    alert("Failed"+e);
}

function getCurrentSSID() {
    WifiWizard.getCurrentSSID(ssidHandler, fail);
}

If you want to get the list of SSID you have configured before :

function listHandler(a) {
    alert(a);
}

function getWifiList() {
   WifiWizard.listNetworks(listHandler, fail);
}

If you want to return a complete scan result :

function listHandler2(a) {
    alert(JSON.stringify(a));
}

function getScanResult() {
    WifiWizard.getScanResults(listHandler2, fail);
 }

To test:

<button onclick="getCurrentSSID()">Get Current SSID</button> 
<button onclick="getWifiList()">Get configured SSID list</button> 
<button onclick="getScanResult()">Get Scan result</button> 

Please see what you exactly need to get work from the list of the functions that the link I provided is offering and if you are encountering issues, reply.

like image 40
AshBringer Avatar answered Nov 02 '22 15:11

AshBringer