From cd44a180c4d4a3af3120576e491bde147cfaaf9d Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期六, 18 一月 2020 10:15:58 +0800 Subject: [PATCH] 2020-1-18 1.增加默认获取WiFi连接的广播配置方法。 --- hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/NetUtil/NetWorkUtil.java | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/NetUtil/NetWorkUtil.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/NetUtil/NetWorkUtil.java index b030684..8e29bfd 100644 --- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/NetUtil/NetWorkUtil.java +++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/NetUtil/NetWorkUtil.java @@ -7,6 +7,7 @@ import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLDeviceManager; import com.hdl.sdk.hdl_core.Util.LogUtil.HDLLog; import java.net.InetAddress; @@ -21,6 +22,17 @@ */ public class NetWorkUtil { + + private static boolean isGetWifiBroadCast = false; + + public static boolean isIsGetWifiBroadCast() { + return isGetWifiBroadCast; + } + + public static void setIsGetWifiBroadCast(boolean isGetWifiBroadCast) { + NetWorkUtil.isGetWifiBroadCast = isGetWifiBroadCast; + } + public static final int GET_LOCAL_IP = 1; public static final int GET_MAC_ADDRESS = 2; public static final int GET_NETMASK = 3; @@ -119,6 +131,26 @@ } public static String getLocalBroadCast() { + String broadCastIp = "255.255.255.255"; + try { + //2020-1-17 鏂版垨鑰匢P鍦板潃鏂规硶 + if (isGetWifiBroadCast) { + broadCastIp = getWifiBroadAddress(); + } else { + broadCastIp = getLocalBroadCastOld(); + } + + } catch (Exception e) { + e.printStackTrace(); + } + + if (broadCastIp == null) { + HDLLog.E("getLocalBroadCast error ip null"); + } + return broadCastIp; + } + + public static String getLocalBroadCastOld() { String broadCastIp = null; try { Enumeration<?> netInterfaces = (Enumeration<?>) NetworkInterface.getNetworkInterfaces(); @@ -145,7 +177,19 @@ return broadCastIp; } + public static String getWifiBroadAddress() { + String ipaddress = "255.255.255.255"; + try { + WifiManager wifimanage = (WifiManager) HDLDeviceManager.getViewContext().getApplicationContext().getSystemService(Context.WIFI_SERVICE);// 鑾峰彇WifiManager + DhcpInfo dhcpInfo = wifimanage.getDhcpInfo(); + ipaddress = intToIp((dhcpInfo.ipAddress) | (~dhcpInfo.netmask)); + + } catch (Exception ex) { + ipaddress = "255.255.255.255"; + } + return ipaddress; + } public static InetAddress getLocalHostLANAddress() throws Exception { -- Gitblit v1.8.0