在IPerf的官网上有IPerf3对应的Android 版本可以下载(https://iperf.fr/iperf-download.php),是在Google的源代码库中,但Google被天朝伟大的Great Firewall of China给屏蔽了,不如自己动手编译一个试试。

以下是翻译:———————————————————————

https://stackoverflow.com/questions/40975003/iperf3-execution-from-android-7-doesnt-work

如果你正在使用ubuntu软件库中的构建工具链,那么构建出的二进制可执行文件在Android 7.0上将无效,因为那是那是一个老版本的构建链,你需要使用新版本的NDK(现在是版本是r13B)来构建二进制文件。

我是如何解决这个问题的:

  1. 将iperf3源码放入jni文件夹
  2. 创建Android.mk和Application.mk(我将在下面贴出来),并和其他文件放入同一个文件夹
  3. 进入jni文件夹,运行命令“ndk-build”,可以看到,所有的二进制文件都生成在/libs文件下,它们在Android 7.0上是有效。(选择二进制文件,放入assets文件夹下,导入对应ABI的二进制文件实现你的策略,或者直接获取armabi的二进制文件,然后导入你的app )

注意 :iperf3使用了一个Android不能访问的文件夹来缓存结果。你需要改变这个文件使iperf3正常工作。请参考https://github.com/esnet/iperf/blob/670c18584bcf7a285f3561eb7ea38cc53600d0ab/src/iperf_api.c#L2621

Android.mk

我认为在这个脚本中引入.h文件是没有必要的。

http://pastebin.com/fPsn0wsD

LOCAL_PATH := $(call my-dir)  include $(CLEAR_VARS)  LOCAL_CFLAGS += -fPIE
LOCAL_LDFLAGS += -fPIE -pie  LOCAL_MODULE := iperf3
LOCAL_SRC_FILES :=                         cjson.c \  cjson.h \  flowlabel.h \  iperf.h \  iperf_api.c \  iperf_api.h \  iperf_error.c \  iperf_client_api.c \  iperf_locale.c \  iperf_locale.h \  iperf_server_api.c \  iperf_tcp.c \  iperf_tcp.h \  iperf_udp.c \  iperf_udp.h \  iperf_sctp.c \  iperf_sctp.h \  iperf_util.c \  iperf_util.h \  main.c \  net.c \  net.h \  portable_endian.h \  queue.h \  tcp_info.c \  tcp_window_size.c \  tcp_window_size.h \  timer.c \  timer.h \  units.c \  units.h \  version.h  include $(BUILD_EXECUTABLE)

Application.mk

http://pastebin.com/sgSsGNqB

APP_ABI := all
APP_PLATAFORM := android-16

我认为使用ndk-build为不同架构平台构建iperf3更加容易,例如x86架构

翻译结束————————————————————————-

说明几点:

  1. Android.mk中确实没必要引入头文件,因为ndk-build会自动去搜索
  2. Application.mk中的APP_ABI := all 是表示要编译生成当前NDK版本所支持的所有平台(ABI信息库文件),可参考 (https://blog.csdn.net/qq_31387043/article/details/50899589)

IPerf3 for Android 7相关推荐

  1. 【调试工具】Windows和Android端测试工具 - iperf3

    iperf3是一个专业的测速工具,它有Windows,Linux,Mac,Android,IOS等多个版本的客户端 这里我提供的是Windows和Android端程序,其它端的自己去官网下,用法都是一 ...

  2. iperf3测试无线路由器数据吞吐量

    测试路由器:小米无线路由器MINI(R1CM) 评测工具:iperf3 关于iperf3的更多详细用法(图文详解)→传送门:https://blog.csdn.net/awfiihmmmm/artic ...

  3. Android 移植iperf3.13 测试网络

    iperf,测试网络性能的,不同于 webrtc里面的gcc 算法预估网络带宽,iperf是实际占用网络来传输数据测量实际的网络性能. 官网:https://iperf.fr/ 官方就有 androi ...

  4. 4测试命令_局域网带宽测试工具-iPerf3

    工具名称:iPerf3 官网: https://iperf.fr/ 简介:用于TCP,UDP和SCTP的终极速度测试工具: 功能:跨平台(Windows,Linux,Android,MacOS X,F ...

  5. Android网卡网速测试

    1.可以使用speedtest.apk测试 2.使用iPerf进行网络吞吐量测试 2.1 unbunt环境 1)apt-get install iperf (安装iperf) 2)  iperf -s ...

  6. Android O/P/Q 版本移植iperf网络性能测试工具

    iperf是什么 Iperf 是一个网络性能测试工具,是跨平台的,支持Window,linux,android平台的运行和测试,可以为任何网络生成标准化的性能测量. Iperf 可以测试最大 TCP ...

  7. 梅林安装opkg后安装iperf3_路由器最高速度/性能测试 - Windows 安装 IPerf3 及 使用方法...

    # iPerf 简介 > `Iperf` 是一个网络性能测试工具.Iperf 可以测试最大 TCP 和 UDP 带宽性能,具有多种参数和 UDP 特性,可以根据需要调整,可以报告带宽.延迟抖动和 ...

  8. Android设备网络压力测试

     网络测试的几个维度: 1.网络的性能 带宽:通过TCP测试来量度 时延:用ping命令量度 数据报丢失:用Iperf UDP测试来量度 Jitter(延时变化):用Iperf UDP测试来量度 信号 ...

  9. Android手机吞吐率测试方法记录

    1.测试平台搭建: 准备一台window电脑,将一台路由器使用网线连接电脑,将测试机器连接该路由器的wifi,使测试机与电脑处于同一个wifi环境下. 下载电脑端的Iperf工具和测试机端的Iperf ...

最新文章

  1. STL 整理(map、set、vector、list、stack、queue、deque、priority_queue)
  2. SAP CRM business partner determination原理介绍
  3. 文件服务器 工作站 通信媒体,用于多工作站/多平台非线性视频编辑系统的媒体文件访问和存储解决方案...
  4. mobx中的数组需要注意的地方
  5. 几种常用的排序方法7--希尔排序
  6. Nginx使用Expires增加浏览器缓存加速
  7. POJ_2823 Sliding Window(单调队列)
  8. 多智能体强化学习MAPPO源代码解读
  9. Postman测试导出导入Excel教程
  10. 时域和频域的关系(转载)
  11. 方正税控计算机配置,方正计算机U盘启动优先级的BIOS设置说明_IT /计算机_信息...
  12. 计算机主机地址填什么,什么是IP地址 何设置IP地址
  13. 后端码农谈前端(CSS篇)第二课:CSS的5个来源
  14. cpython-36m-x86_64-linux-gnu.so undefined symbol玄学解决
  15. 服务器怎么导入皮肤文件,Malody皮肤导入的详细技巧
  16. 写作辅助软件_文案写作系统_软文写作服务_写作软件服务商|Giiso智搜
  17. JavaScript购物车小项目
  18. PostgreSQL 区块链条管理举例
  19. 亲身体会:自学和培训的区别
  20. 阿里云安全科学家吴翰清入选MIT TR35,你知道弹性安全网络技术吗?

热门文章

  1. SVN服务器和客户端的下载和安装
  2. 从学习php到可以独立做网站需要多久,第一课 前言 学PHP就是为了做网站
  3. 高斯积分e^(-x^2)在无限域上的定积分
  4. VMware虚拟机的快照了解一下
  5. Android Studio 安装虚拟机报错 Intel® HAXM installation failed.
  6. Java期末复习题详解
  7. abp Volo.Abp.AbpException: Could not find the bundle file ‘/libs/abp/core/abp.css‘ for the bundle ‘B
  8. 03确认收货与自动收货
  9. 数据库课设——汽车信息租赁管理系统
  10. python consul配置中心_微服务注册发现配置中心-consul