Получить список всех устройств, подключенных в одной сети

Как я могу получить список всех устройств, подключенных в той же сети WiFi. Я обнаружил, что в Google Play работают несколько приложений, таких как "Кто на моем Wi-Fi" и "Инспектор WiFi". Я хочу реализовать ту же функциональность в моем приложении.

1 ответ

Я узнаю этот код, чтобы показать все подключенные Ips к одному и тому же WI-FI:

private int LoopCurrentIP = 0;
String ad ;


@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //ArrayList<InetAddress> ar = getConnectedDevices( );

}



public ArrayList<InetAddress> getConnectedDevices(String YourPhoneIPAddress) {
    ArrayList<InetAddress> ret = new ArrayList<InetAddress>();

    LoopCurrentIP = 0;

    String IPAddress = "";
    String[] myIPArray = YourPhoneIPAddress.split("\\.");
    InetAddress currentPingAddr;


    for (int i = 0; i <= 255; i++) {
        try {

            // build the next IP address
            currentPingAddr = InetAddress.getByName(myIPArray[0] + "." +
                    myIPArray[1] + "." +
                    myIPArray[2] + "." +
                    Integer.toString(LoopCurrentIP));
            ad = currentPingAddr.toString();   /////////////////
            Log.d("MyApp",ad);                 //////////////

            // 50ms Timeout for the "ping"
            if (currentPingAddr.isReachable(50)) {

                ret.add(currentPingAddr);
                ad = currentPingAddr.toString();        /////////////////
                Log.d("MyApp",ad);                     //////////////
            }
        } catch (UnknownHostException ex) {
        } catch (IOException ex) {
        }

        LoopCurrentIP++;
    }
    return ret;
}
Другие вопросы по тегам