判断手机有无网络

更新时间: 2025-10-16 10:54:02

# 代码

// 检测是否有网络  
const getNetworkStatus = async () => {
	return new Promise((resolve, reject) => {
		uni.getNetworkType({
		    success: (res) => {   
		      // 网络类型枚举
		      const networkTypes = {
		        'wifi': 'WiFi',
		        '2g': '2G',
		        '3g': '3G',
		        '4g': '4G',
		        '5g': '5G',
		        'none': '无网络',
		        'unknown': '未知网络'
		      };
		      
		      // 判断是否有网络
		      const hasNetwork = res.networkType !== 'none';
		      resolve(hasNetwork)
		    },
		    fail: (err) => {
		      resolve(false)
		    }
		});
	})
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

# 解析

uni.getNetworkType是UniApp提供的跨平台网络类型检测API,其工作原理和参数说明如下:

success返回参数:
networkType:网络类型,可能值包括'wifi'、'2g'、'3g'、'4g'、'5g'、'ethernet'(有线网络,仅5+App支持)、'unknown'(未知网络)、'none'(无网络)