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新知",每天准时分享一个新知识,这里只是同步,想要及时学到就来关注我吧!

相关推荐
2501_915909061 天前
手机崩溃日志导出的工程化体系,从系统级诊断到应用行为分析的多工具协同方法
android·ios·智能手机·小程序·uni-app·iphone·webview
2501_915106321 天前
App HTTPS 抓包实战解析,从代理调试到真实网络流量观察的完整抓包思路
网络协议·http·ios·小程序·https·uni-app·iphone
要站在顶端1 天前
iOS自动化测试全流程教程(基于WebDriverAgent+go-ios)
开发语言·ios·golang
2501_916008891 天前
深入理解 iPhone 文件管理,从沙盒结构到开发调试的多工具协同实践
android·ios·小程序·https·uni-app·iphone·webview
腾讯云qcloud07551 天前
腾讯位置商业授权iOS 轨迹SDK
macos·ios·cocoa
2501_916007471 天前
没有 Mac,如何在 Windows 上架 iOS 应用?一套可落地的工程方案
android·macos·ios·小程序·uni-app·iphone·webview
2501_915106321 天前
uni-app 上架 iOS 的完整实践,从跨端开发到稳定提交的工程路径
android·ios·小程序·uni-app·cocoa·iphone·webview
2501_916007471 天前
HTTPS工作原理与重要性:全面安全指南
网络协议·安全·ios·小程序·https·uni-app·iphone
函数的彼端2 天前
iOS Model Generator - 让 JSON 转模型变得简单高效
ios·json·cocoa
2501_915918412 天前
HTTPS 端口深度解析,443 并不是唯一入口,理解 TLS 流量行为与抓包策略
网络协议·http·ios·小程序·https·uni-app·iphone