android - узнать - скорость интернета на телефоне




как я могу определить скорость интернета в приложении для Android (2)

WifiInfo.getLinkSpeed ​​даст вам максимальную скорость вашей текущей сети Wi-Fi. Ваша фактическая скорость wifi будет ниже этого значения, в зависимости от того, насколько далеко вы находитесь до точки доступа, препятствий, помех, ... Это ваша скорость в вашей Wi-Fi сети. Если вы получаете доступ к устройству в вашей сети, передача будет минимальной между скоростью и скоростью другого устройства.

Если вы подключаетесь к Интернету, ваша Wi-Fi-сеть подключается к Интернету, и ваша скорость будет зависеть от используемой технологии (ADSL, кабель, 4G, спутник и т. Д.) И пропускной способности вашего интернет-провайдера (который находится с другой стороны вашего соединения). Оба значения обычно изменяются во времени, поскольку они зависят от шаблонов использования (количество одновременных пользователей, емкость сети, ..)

Также имейте в виду, что при подключении к Интернету вы делаете запросы на другое устройство (большую часть времени на сервер). Скорость передачи, которую вы получите, будет минимальной между вашей скоростью и той, которую вы связываете с сервером.

В общем, слишком много неподготовленных элементов, чтобы предсказать скорость вашего интернета.

Однако вы всегда можете вычислить его, просто сделайте некоторые запросы, измерите, сколько килобайт (или мегабайт) вы получите, подсчитаете, сколько времени оно заняло и разделило одно на другое. Это будет ваша текущая скорость для этого конкретного соединения.

Если вам нужны более стабильные / достоверные значения, вы должны повторять эту операцию несколько раз и использовать среднее значение. Это то, что делают тестер скорости (www.speedtest.net, testmy.net, ...).

В моем приложении я хочу, чтобы, когда я нажимаю кнопку, он показывает мне точную скорость интернета. Я прочитал весь ответ на этот вопрос, который уже задан в этих ссылках, определяющий скорость интернета в android , « Расчет скорости Интернета в Android» , « Скорость Интернета» в программировании на Android и т. Д. Но я точно не нашел ответа. Я использовал это:

WifiInfo.getLinkSpeed ​​()

но он показывает максимальную скорость. и также я использую коды этого:

TrafficStats

но это не сработало для меня. Мне нужно показать свою скорость сети (т.е. 100 кбит / с). Как я могу это сделать? Пожалуйста, помогите мне.


Чтобы проверить качество подключения к Интернету и трафик. Эта библиотека может вам помочь ..

Facebook - класс сетевого подключения

Network Connection Class - это Android-библиотека, которая позволяет вам определить качество интернет-соединения текущего пользователя. Соединение классифицируется по нескольким «классам подключений», что упрощает разработку. Библиотека делает это, слушая существующий интернет-трафик, выполняемый вашим приложением, и уведомляет вас о том, что качество подключения пользователя изменяется. Затем разработчики могут использовать эту информацию о классе подключений и корректировать поведение приложения (запрашивать изображения с более низким качеством или видео, тип дроссельной заслонки и т. Д.).







wifimanager