Ответ 1
Я решил проблему, запустив сеть своего ПК с помощью сетевого симулятора. Затем я создал виртуальный Wi-Fi с выигрышем 7 и подключил к нему свой телефон.
Есть ли приложение для этого?
Можно ли сделать что-то подобное (qaru.site/info/33870/...) на устройствах Android?
Заранее благодарим за любые советы.
Изменить: я не хочу использовать симулятор. Мне нужно сделать воспроизводимые измерения производительности для моей бакалаврской диссертации. Использование UMTS просто недостаточно воспроизводимо, поэтому зачем-то искать что-то, чтобы имитировать его.
Я решил проблему, запустив сеть своего ПК с помощью сетевого симулятора. Затем я создал виртуальный Wi-Fi с выигрышем 7 и подключил к нему свой телефон.
вы можете ограничить пропускную способность в эмуляторе Android.
например:
emulator -netspeed gsm
больше:
http://developer.android.com/guide/developing/devices/emulator.html#netspeed
Вы также можете просто изменить предпочтительный тип сети на 2G.
Его не так тонко, как регулирование полосы пропускания через ПК, но его намного проще реализовать.
В Android 5 Lollipop перейдите по ссылке:
Вы заметите изменение в более медленной сети GPRS как значок E
в верхней строке состояния экрана.
Если вы работаете в OS X, вы можете использовать Network Link Conditioner, чтобы замедлить подключение к Интернету, затем включить доступ к Интернету и подключить Android для этой сети.
Я знаю, что это старый канал, но мне недавно требовалось это сделать. Большинство перечисленных в списке решений казались "довольно сложными" для скромного разработчика приложений, таких как я, поэтому я понял простой трехэтапный подход это.
Корни вашего телефона, есть много веб-сайтов, посвященных этой ерунде.
Загрузите BradyBound приложение. Оцените этого парня 5 звезд за такую удивительную работу.
При подключении к желаемой сети WiFi отключите соединение!
Вы можете использовать следующие 2 приложения для своих целей:
Теперь вы можете подключиться к android к вашей виртуальной точке доступа WiFi и управлять потерей и потерей пакетов BW + с помощью некоторых сценариев (одиночный пакетный файл *.bat
). Вот пример:
cd C:\ipfw3-2012\binary
@echo on
@set CYGWIN=nodosfilewarning
@ipfw -q flush
@ipfw -q pipe flush
set download="80Kbit/s"
set srcIp=111.111.222.222
ipfw pipe 1 config bw %download%
ipfw add pipe 1 tcp from any to any in
ipfw -c show
ipfw pipe show
Он отлично работает. Вот экран печати:
Если у вас есть iPhone с режимом разработчика, вы можете использовать сетевой кондиционер в настройках разработчика. Настройте Wi-Fi-точку доступа и подключите устройство Android к точке доступа. Теперь вы можете имитировать различные скорости сети через кондиционер канала.
Вы можете написать класс-оболочку, который извлекает весь контент и возвращает данные с задержками и только в небольших кусках.
Если у вас есть встроенный телефон, вы можете использовать утилиту tc
для ограничения полосы пропускания на интерфейсе wlan0
. Я написал немного script, который делает это, и описал, как использовать его на blog. Я тестировал его с CyanogenMod 10.3, и мне действительно интересно, работает ли он на других корневых телефонах.