Repository: cordova-plugin-network-information Updated Branches: refs/heads/master aed63c8ff -> a810b7db9
Added support for the browser Project: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/repo Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/commit/a810b7db Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/tree/a810b7db Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/diff/a810b7db Branch: refs/heads/master Commit: a810b7db99699024893d9f8d00fc1d916a65952d Parents: aed63c8 Author: Suraj Pindoria <suraj.pindo...@yahoo.com> Authored: Fri Sep 5 10:02:07 2014 -0700 Committer: Suraj Pindoria <suraj.pindo...@yahoo.com> Committed: Fri Sep 5 10:03:11 2014 -0700 ---------------------------------------------------------------------- doc/index.md | 1 + plugin.xml | 7 ++++++ src/browser/NetworkProxy.js | 53 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/doc/index.md ---------------------------------------------------------------------- diff --git a/doc/index.md b/doc/index.md index ebae403..016dbdc 100644 --- a/doc/index.md +++ b/doc/index.md @@ -33,6 +33,7 @@ wifi connection, and whether the device has an internet connection. - Amazon Fire OS - Android - BlackBerry 10 +- Browser - iOS - Windows Phone 7 and 8 - Tizen http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/plugin.xml ---------------------------------------------------------------------- diff --git a/plugin.xml b/plugin.xml index a0d530a..94ffc7d 100644 --- a/plugin.xml +++ b/plugin.xml @@ -156,4 +156,11 @@ xmlns:android="http://schemas.android.com/apk/res/android" <runs /> </js-module> </platform> + + <!-- browser --> + <platform name="browser"> + <js-module src="src/browser/NetworkProxy.js" name="NetworkProxy"> + <runs /> + </js-module> + </platform> </plugin> http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/src/browser/NetworkProxy.js ---------------------------------------------------------------------- diff --git a/src/browser/NetworkProxy.js b/src/browser/NetworkProxy.js new file mode 100644 index 0000000..efcf73f --- /dev/null +++ b/src/browser/NetworkProxy.js @@ -0,0 +1,53 @@ +/* + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + */ + +/* + Network API overview: http://www.w3.org/TR/netinfo-api/ + and http://w3c.github.io/netinfo/ +*/ + +var cordova = require('cordova'), + Connection = require('./Connection') + +module.exports = { + getConnectionInfo: function(successCallback, errorCallback) { + window.navigator.connection.type = Connection.NONE; + + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'http://www.google.com', true); + + xhr.onload = function() { + if (xhr.readyState === 4 && xhr.status === 200) { + window.navigator.connection.type = Connection.WIFI; + } else { + window.navigator.connection.type = Connection.NONE; + } + }; + + xhr.send(); + + setTimeout(function() { + successCallback(window.navigator.connection.type); + }, 0); + } +}; + +require("cordova/exec/proxy").add("NetworkStatus", module.exports);