2016-11-27 1 views

ответ

1

У вас есть данные клиента в системном файле:/Proc/нетто/агр Вам потребуется разрешение External Storage.

файла Пример содержания:

IP address  HW type  Flags  HW address   Mask  Device 
192.168.43.40 0x1   0x2   c0:ee:fb:43:e9:f8  *  wlan0 

Вы должны разобрать файл и получить данные.

Например, вы можете попробовать что-то вроде этого:

public ArrayList<String> getClientList() { 
    ArrayList<String> clientList = new ArrayList<>(); 
    BufferedReader br = null; 
    try { 
     br = new BufferedReader(new FileReader("/proc/net/arp")); 
     String line; 
     while ((line = br.readLine()) != null) { 
      String[] clientInfo = line.split(" +"); 
      String mac = clientInfo[3]; 
      if (mac.matches("..:..:..:..:..:..")) { // To make sure its not the title 
       clientList.add(clientInfo[0]); 
      } 
     } 
    } catch (java.io.IOException aE) { 
     aE.printStackTrace(); 
     return null; 
    } 
    return clientList; 
} 

*** Испытано на коренится устройстве.