2016-04-01 34 views
0

我想從局域網獲得ping以查看我的LAN上有哪些設備。如何在android studio中ping(在LAN 1到255中)

這是我的代碼:

TextView info = (TextView) findViewById(R.id.info); 
    String alive = ""; 
    for (int i = 0; i < 256; i++) { 
     Process p = Runtime.getRuntime().exec("/system/bin/ping -c 1 192.168.1." + i); 
     info.setText(""); 
     int status = p.waitFor(); 
     if (status == 0) { 
      alive = alive + " - " + i; 
      Log.d("Hey", i+""); 
     } 

此代碼工作正常,但這個過程是非常耗時。

回答

0

您正在等待每個ping過程完成,然後再開始下一個ping過程。

取而代之,您應該每ping一次製作List<Process>,然後等待它們在啓動它們之後在單獨的循環中完成。

+0

ty for answer,你能告訴我簡單的代碼嗎? –