更新记录
1.0.0(2025-01-16)
获取网络状态
平台兼容性
uni-app x
Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
---|---|---|---|---|---|
- | - | 5.0 | - | - | - |
piaoyi-getNetworkInfo
开发文档
UTS 语法 UTS API插件 UTS 组件插件 Hello UTS
使用说明
<template>
<view class="content">
<!-- #ifdef APP-PLUS -->
<view class="">
是否使用VPN:{{ networkInfo.isVPN }}
</view>
<view class="">
是否使用WIFI:{{ networkInfo.isWifi }}
</view>
<view class="">
是否能上网:{{ networkInfo.hasInternet }}
</view>
<view class="">
是否使用移动网络:{{ networkInfo.isCellular }}
</view>
<!-- #endif -->
</view>
</template>
<script>
import { ref, onMounted } from 'vue';
import { getNetworkInfo } from '../../uni_modules/piaoyi-getNetworkInfo'
export default {
setup(props, context) {
let networkInfo = ref({})
onMounted(()=>{
networkInfo.value = getNetworkInfo()
console.log('getNetworkInfo', getNetworkInfo())
})
return {
networkInfo
}
}
}
</script>
可能返回值
// 可能的输出:
// 使用WiFi时:
{
hasInternet: true,
isWifi: true,
isCellular: false,
isVPN: false,
isEthernet: false
}
// 使用4G/5G时:
{
hasInternet: true,
isWifi: false,
isCellular: true,
isVPN: false,
isEthernet: false
}
// 无网络时:
{
hasInternet: false,
isWifi: false,
isCellular: false,
isVPN: false,
isEthernet: false
}
记得在 manifest 中添加网络状态检测权限:
{
"permissions": [
"android.permission.ACCESS_NETWORK_STATE"
]
}
这个功能在很多场景下都很有用: 检测网络是否可用 根据网络类型执行不同的操作(比如在移动网络下限制视频质量) 监控网络状态变化 提示用户当前的网络连接状态
返回值说明
参数名称 | 描述 |
---|---|
isVPN | 是否使用VPN |
isWifi | 是否使用wifi |
hasInternet | 是否可以上网 |
isCellular | 是否使用移动网络 |