iOS 中如何模拟弱网环境

关注我,每天分享一个关于 iOS 的新知识

前言

在 iOS App 开发中,时常要面临用户的各种网络环境,如果想要体验更好,不仅要在正常网络环境下能够正常运行,也要在弱网环境下能够正常运行。

今天来教大家如何模拟弱网环境。

iOS 上自带的网络链接调节器

在 iOS 的设置中默认自带了一个用于开发的网络调节器,可以用于模拟弱网环境,打开手机系统设置,往下翻,找到开发者。

如果你的手机设置里没有看到这个选项,可以先打开 Xcode,然后用数据线和手机相连,过一会儿就能看到开发者选项了。

iOS 16 以上需要在设置中将隐私与安全中的开发者模式打开。

点进开发者中,可以看到网络链接调节器的一栏,再点进去就是用来模拟各种不同网络场景了。

可以在这个页面上找到系统默认预设的一些网络配置(100% 丢包、3G 网络、Wi-Fi 等),首先把启用开关打开,然后点击其中一个预设来选择预设网络

现在你就可以在这种网络状态下来测试自己的 App 了。

点击预设右边的信息按钮还可以看到这个网络配置具体的参数,但不能修改。

如果预设的这些配置无法满足你的需求,你还可以点击下边的添加描述文件按钮来自定义一个配置,可以自定义带宽、丢包、延迟等参数。

用 Charles 模拟弱网

还可以用 Charles 等抓包工具来模拟器弱网,首先在电脑上打开 Charles 客户端,配置好代理之后,选择顶部工具栏 Proxy,然后点击下拉菜单中的 Throttle Settings。

在弹出的页面中,进行设置即可,可以直接选择 Throttle preset 预设的选项,或者直接在下边的带宽、丢包等输入框中自定义值。

点击 OK 之后就可以在 App 里进行弱网测试了。

Mac 电脑配置弱网

除了上边两个方法之外,如果你想在模拟器中运行测试,可能需要在你的 Mac 上模拟弱网,Xcode 有一些附加工具可以做到这一点。

打开 Xcode,点击顶部菜单 Xcode -> Open Developer Tool -> More Developer Tool,默认情况下会打开浏览器跳转到苹果的下载网站 developer.apple.com/download/al...,进入之后需要先登录开发者账号。

然后在输入框中搜索 network tool,搜索结果中会出现 Xcode 的Additional Tools,点击下载

下载之后在电脑上打开这个文件,然后打开 Hardware 文件夹,就能看到Network Link Conditioner.perfPane 文件了,双击打开按照提示步骤安装即可。

安装之后在系统设置里能够看到多了 Network Link Conditioner 的选项,点进去之后就可以像在手机上一样的方式操作弱网了。

也可以通过点击右下角的 Manage Profiles 来管理和添加自定义的配置。

这里每天分享一个 iOS 的新知识,快来关注我吧

本文同步自微信公众号 "iOS新知",每天准时分享一个新知识,这里只是同步,想要及时学到就来关注我吧!

相关推荐
zwd20058 小时前
词频是什么?生词滑块 zipf 3.0 到 5.0 怎么调:同一屏从 0 个生词到 11 个
ios·iphone·效率工具·英语学习·词频·屏幕翻译
茶底世界之下12 小时前
灯暖窗冷,色温要不要继续降?用 Awaking 看混合光的取舍
ios
2501_9160074716 小时前
Windows OpenSSL 生成 iOS 证书,制作 p12 与描述文件,KXBuild 签名实操
windows·vscode·ios·objective-c·个人开发·swift·敏捷流程
最强小杰18 小时前
gpt-image-2.5-sunburst + OpenAI SDK + Cline 怎么接?完整图生图与局部重绘教程
gpt·ios·ai·iphone
kk_net889919 小时前
FSNotes:macOS 和 iOS 上的开源笔记管理器
笔记·其他·macos·ios
00后程序员张19 小时前
Windows 开发 iOS App 入门,用 SwiftUI 写第一个 iOS App 装到 iPhone
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_915106321 天前
抓包抓到乱码或压缩字节怎么解析,TraceEagle五种查看模式和一键解码
网络协议·计算机网络·网络安全·ios·adb·https·udp
andyweike2 天前
Swift
开发语言·ios·swift
茶底世界之下2 天前
白杯偏蓝,色温调到哪里该停?Awaking 两版正式导出
ios
静以修身zzz2 天前
OpenStack对象存储-Swift、OpenStack编排管理-heat、OpenStack网络管理-neutron
linux·运维·服务器·架构·openstack·swift