Как отобразить окно предупреждения, если нет подключения к Интернету с помощью PhoneGap?
function checkConnection() {
var networkState = navigator.network.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';
alert('Connection type: ' + states[networkState]);
}
Здесь я хочу отобразить предупреждение, если только интернет-соединение не доступно? Я использую, если statment if(statusValue == 'none'){ alert }
Но здесь не работает в моем мобильном приложении. Вот я использую Phonegap-1.3.0.js
5 ответов
Просто делать
networkState = navigator.network.connection.type;
if (networkState == Connection.NONE)
{
alert('No internet connection ');
};
Попробуй это:
function checkConnection() {
network = navigator.network.connection.type;
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';
// alert('Connection type: ' + states[network]);
return states[network];
}
if (states[network] == 'No network connection')
{
alert('Connection type: ' + states[network]);
}
Попробуйте приведенный ниже код.
var networkState = navigator.network.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 ((states[networkState]) == states[Connection.NONE])
{
alert("Please check your internet connectivity and try again");
}
Это должно помочь вам:
// Wait for Cordova to load
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
function onDeviceReady() {
document.addEventListener("offline", whenOffline, false);
return false;
}
function whenOffline() {
navigator.notification.alert(
'Sorry your internet connection is not working, please enable it !', // message
alertDismissed, // callback
'Settings', // title
'Done' // buttonName
);
return false;
}
Вы также можете использовать navigator.network.isReachable для проверки связи с некоторыми сайтами, такими как Google, с почти 100% временем безотказной работы. Между прочим, это не работает во всех мобильных ОС или в некоторых конкретных версиях Android?