You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在React Native中获取Android/iOS网络速度及解决集成问题

解决React Native获取网络速度及库配置问题

解决react-native-network-speed配置时找不到getPackages方法的问题

  • React Native 0.60及以上版本默认支持自动链接,完全不需要手动在MainActivity.java或MainApplication.java里添加Package。直接执行以下命令完成依赖安装即可:
    npm install react-native-network-speed --save
    # 或者用yarn
    yarn add react-native-network-speed
    
  • 如果是低于0.60的旧版RN,需要手动配置,但getPackages()方法不在MainActivity.java里,而是在MainApplication.java文件中,找到这个方法后把new RNNetworkSpeedPackage()加入返回的列表就行。
  • 如果你的项目是新架构搭建的,这个库大概率不兼容,建议直接换用其他维护活跃的库。

替代方案:更可靠的网络速度获取方式

要是react-native-network-speed不好用,试试下面两种方法:

1. 用@react-native-community/netinfo结合自定义测速逻辑

NetInfo本身只能拿到网络类型和连接状态,但可以通过发起小文件请求、计算下载时间来估算网速:

import NetInfo from '@react-native-community/netinfo';

const measureNetworkSpeed = async () => {
  const startTime = new Date().getTime();
  // 替换为你自己服务器上的小文件地址(比如10KB左右的txt文件)
  const url = '你的小文件地址';
  try {
    const response = await fetch(url);
    const blob = await response.blob();
    const fileSize = blob.size;
    const endTime = new Date().getTime();
    const duration = (endTime - startTime) / 1000; // 转成秒
    const speedKbps = (fileSize * 8) / (duration * 1024); // 转成Kbps
    const speedMbps = speedKbps / 1024;
    console.log(`当前网速:${speedKbps.toFixed(2)} Kbps / ${speedMbps.toFixed(2)} Mbps`);
    return { speedKbps, speedMbps };
  } catch (error) {
    console.error('测速失败:', error);
    return null;
  }
};

// 使用时先检查网络连接状态
NetInfo.fetch().then(state => {
  if (state.isConnected) {
    measureNetworkSpeed();
  }
});

2. 使用维护活跃的第三方库

比如react-native-speed-test,配置简单且兼容新版本RN:

npm install react-native-speed-test --save

使用示例:

import SpeedTest from 'react-native-speed-test';

SpeedTest.startTesting({
  fileSize: 100000, // 测试用文件大小(字节)
  timeout: 10000, // 超时时间(毫秒)
})
.then(result => {
  console.log(`下载速度:${result.downloadSpeedMbps} Mbps`);
  console.log(`上传速度:${result.uploadSpeedMbps} Mbps`);
})
.catch(error => {
  console.error('测速错误:', error);
});

内容的提问来源于stack exchange,提问作者Indrajit Dev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 04:16:02