前言
在iOS开发过程中, 在提测前需要自我测试, 这时有些场景要经常模拟各种不同的网络状态, 来对程序进行测试。
相对于自己真正去切换网络(2G/3G/4G/WIFI) 、跑到电梯里去测网络状态差场景,和设置网络代理连接代理来说,这里介绍的是使用苹果官方方法。
正文
一、模拟器模拟网络测试
使用Xcode模拟器方面,苹果给我们提供了一个很实用的工具,Network Link Conditioner可以模拟各种不同状况下的网络环境,方便我们进行测试。
安装
Network Link Conditioner位于”Hardware IO Tools for Xcode”工具包中,这个包可以在Apple Developer Downloads下载得到,然后搜索Hardware IO Tools for Xcode,选择一个符合自己版本的下载。
具体的点击看某个Hardware IO Tools for Xcode看详情介绍,一般是最新的即可。
下载完成后,打开DMG文件,然后双击”Network Link Condition.prefPane”进行安装。
安装完成后,我们就可以在系统设置面板中的最下面找到它。
打开Network Link Conditioner的控制面板,我们就可以改变iPhone模拟器的网络环境,它提供了很多不同的网络状态,包括:
EDGE(2G)
3G
DSL(电话线上网)
WiFi
High Latency DNS(高延迟)
Very Bad Network(网络状况不稳定)
100% Loss(全丢包)
每一个状态都可以对带宽、延时和丢包率进行设置(如果任一项的值被设置为零,则那一项的值就与本机电脑的网络状态一致)。除了默认提供的配置,我们也可以创建自己的网络状态,以满足特殊的需求。可以点击Manage profiles,设置相应的状态。
二、真机模拟网络测试
其实Apple在 iOS 系统中预置了网络调试工具,但是只有添加过测试设备,并使用XCode连接下设备才能激活. 这时只要去设置中就可以看到多出来一项:开发者
点击开发者进去,然后看到中间的那行NETWORK LINK CONDITIONER
其中Status是表示网络限制是否开启,点击进去就可看到详细设置.
注意: 这项开启后影响的是整个系统(macOS / iOS),所以调试完毕后不要忘记关掉,免得会闹出笑话,骂什么破网络。
我是楚简约,感谢您的阅读,
喜欢就点个赞呗,“❤喜欢”,
鼓励一下,你在看,我就继续写~
非简书用户,可以点右上角的三个“...”,然后"在Safari中打开”,就可以点赞咯~