ios 截取手机流量_如何获取 iOS 的网络流量数据

最近在做直播相关的一些内容,其中一个需求就是在直播时,能够实时地显示当前的网络状况,包括上下行的速度与累计使用的流量。遂做了一些相关的研究,发现所有的检索结果都指向了 ifaddrs.h 。依照文件头部的版权申明, ifaddrs.h 来自 FreeBSD 的项目,版权属于 Berkeley Software Design, Inc.。

FreeBSD 是一种自由的类 Unix 操作系统,它起源于 AT&T Unix,是经过 BSD 、 386BSD 和 4.4BSD 发展而来的类 Unix 的一个重要分支。

—— 摘自维基百科

当然追根溯源并不是今天的重点,而且网上一堆 OC 的现成例子,抄了就能用。不过作为一名 Swift 老司机,怎么用 Swift 做实现才是一名好司机的关键。下面我们发车!

如何自己将 C.h 封装成一个 Module

首先,基于扁平与模块化的思想,直接将 ifaddrs.h 放到 Objective-C bridging header 做桥接肯定是不妥的,而且如果要将其加到一个 framework 中,这样也是不允许的。

Swift Complier - Search Path - Import Path

在你的项目中,定位到你 PROJECT 的 Build Setting,过滤器中可以输入一个 import,然后找到 Swift Complier - Search Path 大项中的 Import Path。这里你可以按照平台划分,来加入一些 modulemap 的检索路径。你实际输入的时候可能是这样的 $(SRCROOT)/SystemModule/ifaddrs/ip

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值