5

正在开发一个需要显示热点详细信息的应用程序,包括连接到热点的设备数量

我试过这个但没有奏效,

private int countNumMac()
    {
        int macCount =0;
        BufferedReader br = null;
        try {
            br = new BufferedReader(new FileReader("/proc/net/arp"));
            String line;

            System.out.println(br.toString());
            while ((line = br.readLine()) != null) {

                String[] splitted = line.split(" +");
                System.out.println("splitted :"+splitted);

                if (splitted != null && splitted.length >= 4) {
                    // Basic sanity check
                    String mac = splitted[3];
                    if (mac.matches("..:..:..:..:..:..")) {
                        macCount++;
                    } 
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                br.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        if(macCount == 0)
            return 0;
        else
            return macCount-1; 
    }

有没有其他方法可以计算连接到热点的设备数量..

4

2 回答 2

0

您输入的代码需要 root 访问权限 看看这个库。我希望它能解决你的问题 https://github.com/nickrussler/Android-Wifi-Hotspot-Manager-Class

于 2021-06-21T07:20:07.540 回答
0

您不需要 root 访问权限来完成您正在尝试做的事情。

至于计算连接的设备,您可以轻松地 ping 子网上的每个可能的主机,然后计算它们。

这是一个开源项目,它可能会在您开发新应用程序的过程中为您提供一些垫脚石 :) https://github.com/VREMSoftwareDevelopment/WiFiAnalyzer

于 2021-06-25T22:31:57.550 回答