diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-03-27 10:07:39 +0200 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-03-27 10:09:25 +0200 |
commit | e340a4b120eaf0d490b183c1227bce0eb5b32495 (patch) | |
tree | 38e30d89a875cee468a38caba131dc5181f16518 /same-android/src/main/java/com/orbekk/same/android/net/Networking.java | |
parent | 810c7c1587b5c44c150eb4ba893874555802fc6b (diff) |
Remove unused UDP broadcast code.
Diffstat (limited to 'same-android/src/main/java/com/orbekk/same/android/net/Networking.java')
-rw-r--r-- | same-android/src/main/java/com/orbekk/same/android/net/Networking.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/same-android/src/main/java/com/orbekk/same/android/net/Networking.java b/same-android/src/main/java/com/orbekk/same/android/net/Networking.java new file mode 100644 index 0000000..e335bb3 --- /dev/null +++ b/same-android/src/main/java/com/orbekk/same/android/net/Networking.java @@ -0,0 +1,48 @@ +package com.orbekk.same.android.net; + +import java.net.InetAddress; +import java.net.UnknownHostException; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import android.content.Context; +import android.net.DhcpInfo; +import android.net.wifi.WifiManager; + +public class Networking { + private Context context; + private Logger logger = LoggerFactory.getLogger(getClass()); + + public Networking(Context context) { + this.context = context; + } + + public InetAddress fromInt(int ip) { + byte[] quads = new byte[4]; + for (int k = 0; k < 4; k++) + quads[k] = (byte) ((ip >> k * 8) & 0xFF); + try { + return InetAddress.getByAddress(quads); + } catch (UnknownHostException e) { + logger.warn("Failed to find broadcast address."); + return null; + } + } + + public synchronized DhcpInfo getDhcpInfo() { + WifiManager wifi = + (WifiManager)context.getSystemService(Context.WIFI_SERVICE); + return wifi.getDhcpInfo(); + } + + public synchronized InetAddress getWlanAddress() { + return fromInt(getDhcpInfo().ipAddress); + } + + public synchronized InetAddress getBroadcastAddress() { + DhcpInfo dhcp = getDhcpInfo(); + int broadcast = (dhcp.ipAddress & dhcp.netmask) | ~dhcp.netmask; + return fromInt(broadcast); + } +}
\ No newline at end of file |