@react-native-community/netinfo
一个提供网络信息访问的跨平台 API。
For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.
@react-native-community/netinfo 允许你获取有关连接类型和连接质量的信息。
安装
- npx expo install @react-native-community/netinfoIf you are installing this in an existing React Native app, make sure to install expo in your project. Then, follow the installation instructions provided in the library's README or documentation.
API
要导入此库,请使用:
import NetInfo from '@react-native-community/netinfo';
如果你只想获取一次网络连接信息,可以使用:
NetInfo.fetch().then(state => { console.log('连接类型', state.type); console.log('是否已连接?', state.isConnected); });
或者,如果你更愿意订阅网络状态更新(这样你就可以在网络状态发生变化时随时运行代码/执行操作),请使用:
const unsubscribe = NetInfo.addEventListener(state => { console.log('连接类型', state.type); console.log('是否已连接?', state.isConnected); }); // 要取消订阅这些更新,只需使用: unsubscribe();
获取 SSID
要访问 ssid 属性(可在 state.details.ssid 下获取),还需要一些额外的配置步骤:
- 使用
Location.requestForegroundPermissionsAsync()或Location.requestBackgroundPermissionsAsync()请求位置权限。
仅限 iOS
-
将
com.apple.developer.networking.wifi-infoentitlement 添加到 app.json 中的ios.entitlements下:app.json"ios": { "entitlements": { "com.apple.developer.networking.wifi-info": true } } -
在你应用的 App Identifier 中勾选 Access Wi-Fi Information 选项,可在此处找到。
-
使用
eas build --platform ios或npx expo run:ios重新构建你的应用。
了解更多
获取有关 API 及其用法的完整信息。