Reference version

@react-native-community/netinfo

一个跨平台 API,用于获取网络信息。

Android
iOS
tvOS
Web
Included in Expo Go
Bundled version:
11.4.1

For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

@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

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

    app.json
    "ios": { "entitlements": { "com.apple.developer.networking.wifi-info": true } }
  • 在你的应用的 App Identifier 中勾选 Access Wi-Fi Information 选项,可在此处找到

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

了解更多

访问官方文档

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