iOS模拟各种网络状态
在iOS开发中我们有在各种不同网络状态下测试app运行状态的需求。苹果给我们提供了在模拟器和真机状态下,模拟各种网络状态的软件。
1、在模拟器中
苹果提供的模拟网络状态的工具官网地址
下载该工具需要登录Apple ID,根据需求选择不同的版本。
![](https://i-blog.csdnimg.cn/blog_migrate/077e541de80805f4184ab331ae5dab7e.webp?x-image-process=image/format,png)
选择如图所示,点击Network Link Conditioner.prefPane运行
![](https://i-blog.csdnimg.cn/blog_migrate/adbcfa956102cc14dd083f19a3c54344.webp?x-image-process=image/format,png)
在系统偏好设置中出现了该工具的选项
![](https://i-blog.csdnimg.cn/blog_migrate/a57582f0474db5818ac8d1986c702154.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/01b1a872650109a5c609211d08bb2750.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/534e9a0f17de4a03d6f3f6b491c8d9f5.webp?x-image-process=image/format,png)
不同选项对应的网络状态。
- Preset Profiles 预设网络状况
配置 | 说明 |
---|---|
100%Loss | 全丢包 |
3G | 3G网络 |
DSL | 电话线上网 |
Edge | 2G网络 |
High Latency DNS | 高延迟 |
Very Bad Network | 网络状况不稳定 |
Wifi | Wifi网络 |
- Custom Profiles 自定义网络状况。
注意点:该工具是对全局有效的,如果开启了某一项网络状态,对整个系统都有效。所以在测试完app后要及时关闭。
2、真机
苹果在iOS系统中预置了网络调试工具,但是只有添加过测试设备,并使用Xcode连接下设备才能激活.
- Xcode未连接前
Xcode连接后发现设置中多出来一项:开发者
![](https://i-blog.csdnimg.cn/blog_migrate/15de6e37f771952fc1fc9c91a4e86a70.webp?x-image-process=image/format,png)
选择Status
![](https://i-blog.csdnimg.cn/blog_migrate/d2770068bc62278130303d9b8f292bf1.webp?x-image-process=image/format,png)
里面的选择和在mac上的选项一样。
![](https://i-blog.csdnimg.cn/blog_migrate/3252181efc89276181a11165100a436b.webp?x-image-process=image/format,png)
注意点:开发者选项也是对全局有效的,如果开启了某一项网络状态,对整个系统都有效。所以在测试完app后要及时关闭。
3、Charles抓包
延迟设置》选择相应的网络延迟设置或者自定义延迟》开启延迟即可