日常中,我们手机连接网络的方式包括:WiFi网络,2G,3G,4G网络。在以web方式开发手机应用时,如何判定手机当前的网络状态呢?H5+规范为我们提供了检测网络状况以及监听网络状态发生变化的API接口。在开发中,可以很方便的使用。
使用:通过H5+提供的plus.networkinfo来实现。
1. 检测网络当前状况
使用方式:plus.networkinfo.getCurrentType();
返回值 : Int型
0 | 未知网络 |
1 | 没有网络连接 |
2 | 有线网络连接 |
3 | WIFI网络连接 |
其他 | 手机自带网络(2G,3G,4G) |
// 检查网络状态
var netState = false;<span style="font-family: Arial, Helvetica, sans-serif;">// 网络状态,</span>
var netInfo;// <span style="font-family: Arial, Helvetica, sans-serif;">网络状态信息</span>
function netInfoCheck(){
var netValue = plus.networkinfo.getCurrentType();
switch (netValue){
case 0:
netInfo = "未知";
break;
case 1:
netInfo = "网络连接异常,请检查网络";
break;
case 2:
netInfo = "有线网络";
netState = true;
break;
case 3:
netInfo = "wifi网络";
netState = true;
break;
default:
netInfo = "手机流量";
netState = true;
break;
}
}
2. 监听网络状态变化事件
H5+也提供了监听网络状态变化的API:
使用方式----document.addEventListener("netchange", function(){
netInfoCheck();// 网络状态变化检测
});