在线/离线连接重定向Phonegap/Cardova



我正在使用phonegap/cordova 3.3.x开发一个应用程序,我对可以检查连接是否可用的脚本没有任何运气,如果这样显示"main.html"。如果没有连接,请显示" offline.html"。目前,我的index.html当前重定向到我的" main.html",我在" index.html"中有此脚本,尽管它不起作用。.我尝试了其他几个脚本,无用。让我知道我是否还需要一个适当的.js文件,我知道旧的PhoneGap构建您以前必须在资产中包含PhoneGap.js文件吗?..有帮助吗?::

<script>
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.NONE]     = 'No network connection';
}
  if (networkState == Connection.NONE ){
   window.location = "offline.html";
   } 
            }
        }
 window.location='./main.html';
</script>

我也尝试过" ./offline",这只给了我默认的Android页面。提前感谢!

您可以订阅Onload中的两个事件(与DevicEready相同的位置)。

这两个事件是"在线"one_answers"离线":

document.addEventListener("offline", this.onReceivedOffline, false);
document.addEventListener("online", this.onReceivedOnline, false);

所以它将是

document.addEventListener("offline", onOffline, false);
function onOffline()
{
    window.location = "offline.html";
}

您可以在此处阅读更多有关它的信息:http://docs.phonegap.com/en/3.3.0/cordova_events_events.md.html#online

最新更新