Ich arbeite an einer App und es ist fast fertig mit Ausnahme von nur einer Sache: Ich weiß nicht, wie Link Geschwindigkeit und legen Sie es in der Statusleiste.Ich bin neu in Java, also wenn jemand mir helfen könnte, würde ich sein sehr dankbar. P.S. Entschuldige mein schlechtes Englisch.Wie programmgesteuerte Verbindungsgeschwindigkeit erhalten?
Antwort
Wie die Replikatoren vorschlagen, ist Ihre Frage nicht sehr klar. Sie könnte mit Bezug auf die Link Verbindungsgeschwindigkeit (dh bis zu 54 Mbps mit gutem Signalempfang Wifi oder bis zu 7,2 Mbps mit voller Geschwindigkeit HSDPA), die abhängig ist:
- Die Netzwerk-Schnittstelle Sie verwenden bei eine Zeit. Einige Telefone erlauben Tethering, dh Sie können sowohl Wifi als auch Mobile Data Link (GPRS/3G/HSDPA) gleichzeitig oder bei automatischer Umschaltung aktivieren (wenn Ihre WLAN-Verbindung abbricht, schaltet Ihr Telefon automatisch auf Mobiles Netzwerk um, falls aktiviert).
- Die Verbindungsgeschwindigkeit auf einmal ausgehandelt. Abhängig von der Signalqualität/Carrier-Netzwerkkonfiguration (einige haben eine maximale Geschwindigkeit)/Mobildatenvertrag (die monatliche Bandbreite überschreitet normalerweise die GPRS-Geschwindigkeit).
In diesem Fall fürchte ich, gibt es keine Standard-Java-API-Methoden, es zu wissen, aber die Android API die benötigte Funktionalität:
- Für WiFi Link Geschwindigkeitskontrolle WifiInfo.getLinkSpeed()
- für Mobile Data Link Ich habe Angst, dass Sie nur TelefonyManager.getNetworkType() überprüfen können, um den aktuellen Mobile Data Link-Typ zu ermitteln. Sie sollten dann die tatsächliche Geschwindigkeit nach Link-Typ (d. H. Für GPRS bis zu 128 kbps, für EDGE bis zu 236,8 kpbs, für 3G bis zu 2 Mbps, für HSDPA bis zu 7,2 Mbps). Berücksichtigen Sie, dass dies nur eine Annäherung ist. Sie könnten mit HSDPA verbunden sein, aber Ihr Mobilfunkanbieter begrenzt die Höchstgeschwindigkeit auf 2 Mbps.
Im anderen Fall, dass Sie die aktuelle (Download/Upload) Datenverbindungsgeschwindigkeit diese beziehen sich auf hohem Niveau nur verfügbar, tatsächlich nicht die Verbindungsgeschwindigkeit messen, sondern die Geschwindigkeit zwischen dem Telefon und einem Server, das kann nicht nur durch Ihre Verbindungsgeschwindigkeit bestimmt werden, sondern auch durch viele andere Faktoren (alle Verbindungen zwischen Ihrem Telefon, einem Server, dem Server selbst usw.). Sie könnten einfach die "HTTP-Level-Geschwindigkeit" messen, was HTTP-Datengeschwindigkeit bedeutet (ohne Overhead-Traffic für Datenpakete), da normalerweise nur HTTP-Verbindungen in jedem Szenario unterstützt werden (Ihr Carrier könnte Sie hinter einem Proxy verstecken, der alles außer HTTP ausfiltert) der Verkehr).
Wenn Sie 8-Level-API verwenden, ist auch eine interessante Funktion namens TrafficStats verfügbar. Auf diese Weise können Sie die gesendeten/empfangenen Pakete auf niedrigem Niveau kennenlernen, die von Ihrem Telefon über den Mobile Data Link ausgetauscht werden. Diese Daten können nur die gesuchten Informationen enthalten (verwenden Sie diese Messungen mit abgelaufenen Zeiten und messen Sie einfach aktuelle/durchschnittlich verwendete Daten) Verbindungsgeschwindigkeit).
Sie können nicht direkt sagen. Sie müssen das zugrundeliegende Betriebssystem fragen. Für OS X können Sie die Ausgabe von "/ sbin/ifconfig" am entsprechenden Netzwerkanschluss analysieren.
Sie können auch eine Erweiterung mit JNI schreiben und die Verbindungsgeschwindigkeit mit C anfragen. Dies ist nur dann der Fall, wenn Sie die Ausgabe von anderen Anwendungen nicht analysieren möchten, aber beachten Sie, dass diese Lösung nicht portierbar ist.
- 1. iOS Detecting Verbindungsgeschwindigkeit oder Typ
- 2. herauszufinden, Verbindungsgeschwindigkeit auf HTTP-Anfrage?
- 3. Webpack und programmgesteuerte Inhaltsskripts
- 4. Bibliothek zum Überprüfen der Verbindungsgeschwindigkeit
- 5. Wie programmgesteuerte Abhängigkeiten zu Gradle-Konfiguration hinzufügen?
- 6. Wie programmgesteuerte Keypad-Schemas in kde
- 7. Ermitteln der Verbindungsgeschwindigkeit für die Netzwerkverbindung
- 8. Wie berechnet man ungefähr die Verbindungsgeschwindigkeit einer Website mit JavaScript?
- 9. Programmgesteuerte Profilerstellung bei laufendem Test durchführen
- 10. Programmgesteuerte Einstellung wiederholter Parameter in Scala
- 11. Warum ignoriert meine programmgesteuerte Ansicht ihre Einschränkungen?
- 12. Programmgesteuerte Konfiguration von Eclipse Installierte JREs
- 13. Programmgesteuerte Konfiguration von Endpunkten vs. web/app.config
- 14. PHP: Dynamische oder programmgesteuerte Catch-Blöcke
- 15. Wie bekomme ich Verbindungsgeschwindigkeit, um das Herunterladen unnötiger Bilder auf meiner Website zu verhindern?
- 16. Throttling Verbindungsgeschwindigkeit in automatisierten Test in El Capitan?
- 17. Erstellen von NSPredicate dynamisch durch das programmgesteuerte Festlegen des Schlüssels
- 18. Anwenden von Cart-Regeln auf programmgesteuerte Bestellungen in Magento
- 19. Link-Geschwindigkeit programmgesteuert erhalten?
- 20. Wie Sie überprüfen können, ob Sie über eine programmgesteuerte Live-Internetverbindung mit C++ verfügen
- 21. Programmgesteuerte Anmeldung und Verwendung von nicht von Google API unterstützten Google-Diensten
- 22. Programmgesteuerte Konfiguration von Anwendungspools zur Unterstützung von reibungslosen Streaming-Publishing-Punkten?
- 23. Programmgesteuerte Begrenzung der CPU-Auslastung durch jede Anwendung unter Windows 7?
- 24. Die programmgesteuerte Auswahl einer Zelle in einer Tabellenansicht führt den zugehörigen Abschnitt nicht aus
- 25. Ist der programmgesteuerte Zugriff auf RSA Secure Id zur Verwendung in der Testautomatisierung möglich?
- 26. Wie Antwortstatus erhalten
- 27. Wie aktuellen Zeitstempel erhalten
- 28. Wie Abhängigkeiten Abhängigkeiten erhalten?
- 29. Wie erhalten Dateiname FILE *?
- 30. Wie erhalten Sie Kreditkartenzahlungen?
Was soll die Verbindungsgeschwindigkeit sein? –
meinst du die Bandbreite Download-Geschwindigkeit? oder vielleicht verweisen Sie auf einen unbestimmten Fortschrittsbalken? – Franco
Möchten Sie wissen, wie schnell die Internetverbindung heruntergeladen werden kann? Oder wie schnell es im Moment ist, Sachen herunterzuladen? Oder etwas ganz anderes? –