Phonegap检查互联网连接

时间:2013-08-13 08:59:27

标签: android cordova phonegap-build

如何检查cordova 3.0版本中的互联网连接?因为我试过

function ondeviceready(){  checkconnection(); alert(navigator.connection.type); }

但它总是返回0。

我听说过jquery mobile但我不知道如何使用它因为我试过

 function checkconnection(){   alert(navigator.onLine);}

加载了jquery移动库但它总是返回true。

这也发生在我的智能手机和AVD上。

有人可以帮助我吗?

3 个答案:

答案 0 :(得分:3)

您可以像这样检查连接:

function CheckConnection()
{
     if( !navigator.network )
     {
         // set the parent windows navigator network object to the child window
         navigator.network = window.top.navigator.network;
     }

    // return the type of connection found
   return ( (navigator.network.connection.type === "none" || navigator.network.connection.type === null || 
          navigator.network.connection.type === "unknown" ) ? false : true );
}

为连接返回true,为无连接返回false。

在Android Manifest中,使用以下权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

编辑: 处理iframe中的窗口。添加了另一项权限。

答案 1 :(得分:1)

HelloZvîncăAlinIonuţ,

以下代码应该在phonegap中进行互联网检查...

var networkState = navigator.connection.type;
    if (networkState == Connection.NONE){
         alert('No Internet');      
    }else{
         alert('Internet Connection there');
    }

应用程序还需要permision来连接Internet,所以在config.xml中添加以上行。

<feature name="http://api.phonegap.com/1.0/network"/>

答案 2 :(得分:1)

试试这个我将在phonegap中进行互联网检查。

//Check Internaet Connection.................................

  //If User is Online.................................

function onOnline() {               
            alert("Internet connected")
}

//If User is Offline....................................
document.addEventListener("offline", onOffline, false);
function onOffline() {
    alert("Internet not connected")

}
    document.addEventListener("online", onOnline, false);