当前位置: 首页 > 知识库问答 >
问题:

获取同一网络中连接的所有设备的列表,Android

宗政海
2023-03-14

在Android系统中,

>

  • 如何获取在同一WiFi网络中连接的设备列表?

    如何从与同一WiFi网络连接的智能手机获取最近的设备?

    频率检查是否能够找到最近的设备?

  • 共有1个答案

    水浩歌
    2023-03-14

    我找到了连接在同一个网络中的设备列表的解决方案,并将代码放在下面

    在onCreate中调用此方法-

    在我们的课堂上写这个方法

      public ArrayList<ClientScanResult> getClientList(boolean onlyReachables, int reachableTimeout) {
        BufferedReader br = null;
        ArrayList<ClientScanResult> result = null;
        try {
            result = new ArrayList<ClientScanResult>();
            br = new BufferedReader(new FileReader("/proc/net/arp"));
            String line;
            int i = 0;
            while ((line = br.readLine()) != null) {
                String[] splitted = line.split(" +");
                if ((splitted != null) && (splitted.length >= 4)) {
                    String mac = splitted[3];
                    if (mac.matches("..:..:..:..:..:..")) {
                        boolean isReachable = InetAddress.getByName(splitted[0]).isReachable(reachableTimeout);
    
                        if (!onlyReachables || isReachable) {
                            result.add(new ClientScanResult(splitted[0], splitted[3], splitted[5], isReachable));
                            i++;
                        }
                    }
                }
            }
        } catch (Exception e) {
            Log.e(this.getClass().toString(), e.getMessage());
        } finally {
            try {
                br.close();
            } catch (IOException e) {
                Log.e(this.getClass().toString(), e.getMessage());
            }
        }
        return result;
    }
    

    如果有任何澄清,请回复此帖子的消息,谢谢

     类似资料:
    • 我可以通过调用来获取内部存储,它返回内部存储的路径。 这方面的任何帮助都将非常感谢,因为没有一个标准的AFAIK可以用来检索所有连接的存储设备的列表。 还有,很多解决方案在不同的设备和Android版本上不起作用。

    • 我正在尝试在这里制作一个应用程序,它将检测WiFi网络中连接的所有设备。我已经做了足够多的谷歌,并提出了一个应用程序,可以检测在应用程序的WiFi网络中连接的设备的IP地址。 现在我想要更多的东西。 < li >我能否找到设备名称,即电话名称或型号或系统名称,以及我们可以用来检测特定设备的任何信息? < li >我们能否找到设备距离,例如该设备距离我们使用应用的手机有多远? < li >这是主要任

    • 我正在开发一个应用程序,其中我需要的第一件事是如何获得连接到我的wifi网络或相同wifi网络的设备。即IP地址、设备名称等。我不知道如何做到这一点已经搜索了很多,但没有可用的示例。 我做了一件事,我将ping 255个ip,无论哪个将响应,都将是连接的ip,但这里的问题是,有些网站已经分配了虚拟ip,因此我只需要检测真实的设备ip地址。 我想做与应用程序WifiTalkie中所做的相同的事情

    • 问题内容: 如何使用Java获取在同一网络(子网)中连接的IP的列表 问题答案: 当网络上的主机对ICMP软件包做出响应(ping)(> JDK 5)时,该方法应该起作用: 像这样调用子网(192.168.0.1-254)的方法: 没有测试它,但应该像这样工作。显然,这仅检查ip地址的最后一个字节中的254个主机… 校验: http://download-llnw.oracle.com/javas

    • 我试图发现我的设备连接到的WiFi网络上的所有设备。这是普通的Java,不是Android。我需要搜索每个设备,看看它是否有一个特定的端口打开。我将通过连接到我发现的第一个符合此条件的设备,所以我需要它的IP地址。我基本上是在尝试编写以下代码:

    • 我是低功耗蓝牙 (LE) API 的新手。有没有办法检查Android设备当前是否连接到任何蓝牙LE设备,并可能获得这些设备的列表? BT-LE设备真的“连接”了吗?我注意到当我的智能手表与我的Nexus 5配对/连接时,状态栏(在KitKat上)中的蓝牙图标不会像连接到经典蓝牙设备时那样变成白色/粗体。 我在经典设备上使用了下面的代码。看起来我可以用相同的方式检查GATT和GATT_SERVER