Есть ли способ замедлить интернет-соединение с iPhone Simulator, чтобы имитировать, как приложение может реагировать, когда вы находитесь в медленном месте в сотовой сети?
IPhone Simulator - Имитировать медленное соединение?
Ответ 1
Приложение под названием SpeedLimit
https://github.com/mschrag/speedlimit
Отлично работает.
Крис.
Ответ 2
Как установить Apple Link Link Conditioner
Инструкции, действующие с 4 ноября 2016 года - macOS Sierra 10.12.
Предупреждение. Если вы только что обновили до macOS Sierra, убедитесь, что вы установили самый последний сетевой кондиционер (в дополнительных инструментах для Xcode 8.2), или молчал; то есть вы включите его, но он не будет дросселировать что-либо или отказаться от каких-либо пакетов.
-
Установите Xcode, если у вас его нет
-
Откройте XCode и перейдите в Xcode > Открыть инструмент разработчикa > Другие инструменты для разработчиков...
-
Загрузите Дополнительные инструменты для Xcode
-
Откройте загруженный образ диска и дважды щелкните файл .prefpane, чтобы установить его.
-
Мы идем!
-
Обязательно включите его. Вам нужно выбрать профиль и включить сетевой кондиционер с помощью большого переключателя, который должен быть знаком с префайлом Time Machine.
Caveat
Это не повлияет на localhost, поэтому обязательно используйте промежуточный сервер или компьютер для совместной работы медленных сетевых подключений к API, который вы используете самостоятельно. Вы можете найти https://ngrok.com/ в этом отношении.
Ответ 3
"Там есть приложение для этого!";) Apple предоставляет панель предпочтений "Network Link Conditioner", которая хорошо выполняет работу.
- для версий Xcode до 4.3, установщик панели можно найти в вашей папке
Developer
, например."/Developer/Applications/Utilities/Network Link Conditioner"
, после установки, если демон не запускается и вы не хотите перезагружать свой компьютер, просто используйтеsudo launchctl load /system/library/launchdaemons/com.apple.networklinkconditioner.plist
- если вы уже сделали это с папкой
Developer
, вы можете установить панель в составе пакета "Оборудование IO Tools for Xcode", доступного через раздел дополнительных загрузок Mac Dev Center.
Ссылка на страницу загрузки (вы должны войти в систему с вашим Apple ID): https://developer.apple.com/downloads/index.action
(кредиты @nverinaud)
Ответ 4
Нет прямого способа эмулировать медленное соединение, в отличие от, скажем, приятного эмулятора сетевого подключения, которым пользуются разработчики BlackBerry. Однако, поскольку ваше симуляторное соединение проходит через ваш компьютер - вы можете просто сосредоточиться на замедлении вашего подключения к компьютеру.
Вам нужно добиться двух вещей (в зависимости от ваших обстоятельств):
- дросселировать вашу полосу пропускания
- увеличить задержку
Возможно, это укажет вам в правильном направлении:
http://www.macosxhints.com/article.php?story=20080119112509736
Есть и хорошие решения с открытым исходным кодом, но я так не помню их имен.
Этот вопрос может помочь: Как отключить сетевой трафик для моделирования окружающей среды?
Ответ 5
Я бы сказал, что медленного соединения недостаточно, чтобы имитировать поведение мобильной сети реальной работы - так как там также гораздо больше потерь пакетов, более высокие задержки и больше отключенных соединений.
Вот удобный script, чтобы настроить брандмауэр для эмуляции этих параметров:
http://pmilosev-notes.blogspot.com/2011/02/ios-simulator-testing-over-different.html