Reference version

This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

@react-native-community/netinfo

一个跨平台 API,提供对网络信息的访问。

Android
iOS
tvOS
Web
Included in Expo Go
Recommended version:
12.0.1

@react-native-community/netinfo 允许你获取有关连接类型和连接质量的信息。

安装

Terminal
npx expo install @react-native-community/netinfo

If 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 下获取),还需要进行一些额外的配置步骤:

仅限 iOS

  • 在你的 app.json 中的 ios.entitlements 下添加 com.apple.developer.networking.wifi-info entitlement:

    app.json
    "ios": { "entitlements": { "com.apple.developer.networking.wifi-info": true } }
  • 在你的应用标识符中勾选 访问 Wi-Fi 信息,你可以在此处找到应用标识符

  • 使用 eas build --platform iosnpx expo run:ios 重新构建你的应用。

了解更多

访问官方文档

获取有关 API 及其用法的完整信息。