HarmonyOS开发-判断网络类型的基本逻辑
在应用开发过程中经常需要对网络进行判断,例如:当前信号是WIFI信息时才进行下载。下面是判断网络信号的基本逻辑:
1、判断网络连接是否为WLAN
// 获取WLAN管理对象 WifiDevice wifiDevice = WifiDevice.getInstance(NetSlice.this); // 调用WLAN连接状态接口,确定当前设备是否连接WLAN boolean isConnected = wifiDevice.isConnected();
2、如果不为WLAN,通过RadioInfoManager获取蜂窝网络类型
// 获取RadioInfoManager对象。 RadioInfoManager radioInfoManager = RadioInfoManager.getInstance(context); // 获取信号信息。 List<SignalInformation> signalList = radioInfoManager.getSignalInfoList(slotId); // 检查信号信息列表大小。 if (signalList.size() == 0) { return; } // 依次遍历list获取当前驻网networkType对应的信号信息。 LteSignalInformation lteSignal = null; for (SignalInformation signal : signalList) { int signalNetworkType = signal.getNetworkType(); }
