gpt4 book ai didi

android - 如何获取当前wifi网络中的 Activity 设备列表?

转载 作者:行者123 更新时间:2023-11-29 18:19:58 25 4
gpt4 key购买 nike

很抱歉,如果这样的问题已经存在,但我找不到任何可以帮助我的答案。

我正在尝试找到一种方法来获取 Activity 网络中存在的设备的 ip+mac 列表。

有没有一种方法可以用 java 或 c++ 来实现,然后将它应用到 java 应用程序中?

最佳答案

这段代码在wifi网络中搜索设备...

package com.example.deviceswichisconnected;

import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {

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;
}
}

关于android - 如何获取当前wifi网络中的 Activity 设备列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6036009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com