web-dev-qa-db-ja.com

PhonegapアプリでWiFiネットワーク情報(SSID)を取得するにはどうすればよいですか?

Phonegapアプリを作っています。私の要件は、ユーザーがホームネットワークを使用しているか、パブリックネットワークを使用しているかに応じて、ユーザーに異なるビューを表示することです。接続されたネットワーク情報を取得するのに役立つプラグインまたはその他の方法はありますか? (ネットワークSSID)。

ありがとう。

11
varun nayyar

これがあります プラグイン forAndroidおよびiOS

cordova plugin add wifiwizard

接続しているネットワークの現在のSSIDを取得する場合:

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

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

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

SSIDのリストを取得したい場合以前に構成済み

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

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

完全なスキャン結果を返したい場合:

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

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

テストする:

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

私が提供したリンクが提供している機能のリストから、仕事を得るのに正確に必要なものを確認し、問題が発生した場合は返信してください。

17
AshBringer

WifiWizardは素晴らしいですが、GitHubではもう維持されていないようです。

代わりに、同じ方法をサポートしているため、現在開発中のWifiWizard2を使用できます。

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

WifiWizard2はAndroidとiOSの両方をサポートしているようです。


ただし、私のように、デバイスのホットスポットまたはWifiテザリングをCordovaで使用する必要がある場合は、 代わりにcordova-hotspot-plugin パッケージ。プロジェクトは残念ながら中止されました;ただし、古いAndroid APIレベルの場合は、引き続き機能するようです。

このプラグインは無数のメソッドをサポートし、完全なリストが利用可能です ここ

5
David Refoua