||
// 取得目前 IP Address
public InetAddress getIpAddress() {
try {
InetAddress inetAddress = null;
InetAddress myAddr = null;
for (Enumeration<NetworkInterface> networkInterface = NetworkInterface.getNetworkInterfaces(); networkInterface.hasMoreElements();) {
NetworkInterface singleInterface = networkInterface.nextElement();
for (Enumeration<InetAddress> IpAddresses = singleInterface.getInetAddresses(); IpAddresses.hasMoreElements();) {
inetAddress = IpAddresses.nextElement();
if(!inetAddress.isLoopbackAddress() && (singleInterface.getDisplayName().contains("wlan0" ) || singleInterface.getDisplayName().contains("eth0" ))){
myAddr = inetAddress;
}
}
}
Log.e("getIpAddress", "My IP: "+myAddr);
return myAddr;
} catch (SocketException ex) {
Log.e("getIpAddress", ex.toString());
}
return null;
}
// 取得廣播 IP Address
public InetAddress getBroadcast(InetAddress inetAddr) {
NetworkInterface temp;
InetAddress iAddr = null;
try {
temp = NetworkInterface.getByInetAddress(inetAddr);
List<InterfaceAddress> addresses = temp.getInterfaceAddresses();
for(InterfaceAddress inetAddress:addresses)
iAddr=inetAddress.getBroadcast();
Log.e("getBroadcast", "Brodcase IP: "+iAddr);
return iAddr;
} catch (SocketException e) {
e.printStackTrace();
Log.e("getBroadcast","getBroadcast"+e.getMessage());
}
return null;
}