使用Hotspot获取已连接设备的名称

时间:2017-05-11 09:17:16

标签: android file sockets share

如何获取从热点(服务器)连接的设备名称?

一个热点连接许多设备但没有任何东西可以获取连接设备的名称,如何获取它?

我可以轻松获取IP地址,但如何获取名称?

1 个答案:

答案 0 :(得分:0)

以下方法可行但是,这是检测版本4.0及更高版本;它无法找到与热点连接的版本为2.2或2.3的设备。

public void getClientList() {
int macCount = 0;
BufferedReader br = null;
try {
    br = new BufferedReader(new FileReader("/proc/net/arp"));
    String line;
    while ((line = br.readLine()) != null) {
        String[] splitted = line.split(" +");
        if (splitted != null ) {
            // Basic sanity check
            String mac = splitted[3];
            System.out.println("Mac : Outside If "+ mac );
            if (mac.matches("..:..:..:..:..:..")) {
                macCount++;
               /* ClientList.add("Client(" + macCount + ")");
                IpAddr.add(splitted[0]);
                HWAddr.add(splitted[3]);
                Device.add(splitted[5]);*/
                System.out.println("Mac : "+ mac + " IP Address : "+splitted[0] );
                System.out.println("Mac_Count  " + macCount + " MAC_ADDRESS  "+ mac);
            Toast.makeText(
                    getApplicationContext(),
                    "Mac_Count  " + macCount + "   MAC_ADDRESS  "
                            + mac, Toast.LENGTH_SHORT).show();

            }
           /* for (int i = 0; i < splitted.length; i++)
                System.out.println("Addressssssss     "+ splitted[i]);*/

        }
    }
} catch(Exception e) {

}               
}

==&gt;点击此处:

检查requestPeers

WifiP2pManager

根据它寻求的文件PeerListListener返回WifiP2pDeviceList携带WifiP2pDevice的列表,该列表包含deviceAddress,deviceName,primaryDeviceType,secondaryDeviceType,status和其他属性。