Checking internet connection with phonegap

0

I took this template from the Phonegap site and it still does not issue an alert showing the connection status. I want to open the InAppBrowser that I'm creating, it shows if it is connected to the internet via 3g or wifi and if it is not, it sends an alert warning the user.

Example: Example taken from the Phonegap site

It does not issue the alert advising the state of the connection, how to do this?

<!DOCTYPE html>
<html>
  <head>
    <title>navigator.connection.type Example</title>
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Wait for device API libraries to load
    document.addEventListener("deviceready", onDeviceReady, false);

    // device APIs are available
    function onDeviceReady() {
        checkConnection();
    }

    function checkConnection() {
        var networkState = navigator.connection.type;
        var states = {};
        states[Connection.UNKNOWN]  = 'Unknown connection';
        states[Connection.ETHERNET] = 'Ethernet connection';
        states[Connection.WIFI]     = 'WiFi connection';
        states[Connection.CELL_2G]  = 'Cell 2G connection';
        states[Connection.CELL_3G]  = 'Cell 3G connection';
        states[Connection.CELL_4G]  = 'Cell 4G connection';
        states[Connection.CELL]     = 'Cell generic connection';
        states[Connection.NONE]     = 'No network connection';

        alert('Connection type: ' + states[networkState]);
    }
    </script>
  </head>
  <body>
    <p>A dialog box will report the network state.</p>
  </body>
</html>
    
asked by anonymous 29.04.2014 / 16:08

1 answer

1

I checked your code and everything works as normal, so change the onDeviceReady function to the following

    function onDeviceReady() {
        alert("Device Ready");
        checkConnection();
    }

And check if any messages appear on the screen, if nothing appears the problem must be occurring even before the check connection function. If so, use adb to check the Cordova logs.

To do this open the terminal and enter the following command.   adb logcat : S CordovaLog: Cordova:     

29.05.2014 / 20:52