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

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

    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 及其用法的完整信息。