Android:Ping命令测试网络

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); new NetPing().execute(); } public String Ping(String str) { String resault = ""; Process p; try { //ping -c 3 -w 100 中 ,-c 是指ping的次数 3是指ping 3次 ,-w 100 以秒为单位指定超时间隔,是指超时时间为100秒 p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + str); int status = p.waitFor(); InputStream input = p.getInputStream(); BufferedReader in = new BufferedReader(new InputStreamReader(input)); StringBuffer buffer = new StringBuffer(); String line = ""; while ((line = in.readLine()) != null){ buffer.append(line); } System.out.println("Return ============" + buffer.toString()); if (status == 0) { resault = "success"; } else { resault = "faild"; } } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } return resault; } private class NetPing extends AsyncTask<String, String, String> { @Override protected String doInBackground(String... params) { String s = ""; s = Ping("www.baidu.com"); Log.i("ping", s); return s; } } }
 !!!别忘了加访问网络权限!!!   下面是运行截图:   如果对 运行结果中的 PING www.a.shifen.com (61.135.169.125) 感到怀疑,那么可以试一下 61.135.169.125 就是百度的网址。   suceess则表示连接成功   如果当前没有连接网络,return 会是 空的 ,结果会是 faild。   如果ping的网址是不存在的,而且还连接着网络,那么程序就会 停在   int status = p.waitFor();   这里,不再向下运行。   Ping远程IP    这一命令可以检测本机能否正常访问Internet。比如本地电信运营商的IP地址为:202.101.224.69。在MS-DOS方式下执行命令:Ping 202.101.224.69,如果屏幕显示:
C:\Documents and Settings\Administrator>ping 202.101.224.69 Pinging 202.101.224.69 with 32 bytes of data: Reply from 202.101.224.69: bytes=32 time=2ms TTL=250 Reply from 202.101.224.69: bytes=32 time=2ms TTL=250 Reply from 202.101.224.69: bytes=32 time=3ms TTL=250 Reply from 202.101.224.69: bytes=32 time=2ms TTL=250 Ping statistics for 202.101.224.69: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 2ms, Maximum = 3ms, Average = 2ms
  则表明运行正常,能够正常接入互联网。反之,则表明主机文件(windows/host)存在问题。

更多相关文章

  1. android 检查网络状态
  2. 如何消除原生Android原生网络连接显示x或者惊叹号
  3. 使用logcat命令
  4. Android网络连接处理
  5. android学习者优秀网址推荐
  6. Android常用网址
  7. android 获取网络资源

随机推荐

  1. Android 永久隐藏导航栏,系统栏的方法
  2. 2种方式进行Spinner数据的添加
  3. Android Ble开发出现的问题
  4. android 查看MD5认证指纹
  5. android 自定义商城app价格正序倒序控件
  6. android 9.0 在rk3326平台上hidl的使用
  7. Android HttpGet和HttpPost设置超时
  8. Android Localization
  9. 【Android】 ProcessBuild Process su 命
  10. 自定义控件5---TypedArray和AttributeSet