Android

Android网络——网络状态

2017-10-15  本文已影响0人  ADark0915

1. 判断网络是否可用

 interface IOnNetWorkListener {
    void onNetWorkListener(boolean pAvailable);
 }

 public boolean isNetworkEnable(String pIP, IOnNetWorkListener pListener) {
    boolean enable = false;
    try {
        //ping -c 3 -w 100  中  ,-c 是指ping的次数 3是指ping 3次 ,-w 10  以秒为单位指定超时间隔,是指超时时间为100秒 
        Process p = Runtime.getRuntime().exec("ping -c 3 -w 5 " + pIP);
        // ping的状态
        int status = p.waitFor();
        if (status == 0) { //ping的状态码返回 0 表示正常。
            enable = true;
        } else {
            enable = false;
        }
    } catch (InterruptedException pE) {
        pE.printStackTrace();
    } catch (IOException pE) {
        pE.printStackTrace();
    }

    // 把ping的状态通知给监听者
    pListener.onNetWorkListener(enable);

    return enable;
}

2. 判断网络类型

private void isWIFI(){
      
}
上一篇 下一篇

猜你喜欢

热点阅读