Gibt es eine Möglichkeit, die Internetverbindung zum iPhone Simulator zu verlangsamen, um nachzuahmen, wie die App reagieren könnte, wenn Sie sich an einer langsamen Stelle im Mobilfunknetz befinden?
125
Gibt es eine Möglichkeit, die Internetverbindung zum iPhone Simulator zu verlangsamen, um nachzuahmen, wie die App reagieren könnte, wenn Sie sich an einer langsamen Stelle im Mobilfunknetz befinden?
Antworten:
Eine App namens SpeedLimit
https://github.com/mschrag/speedlimit
Funktioniert super.
chris.
quelle
Failed to set speed limit
So installieren Sie Apples Network Link Conditioner
Diese Anweisungen gelten ab Oktober 2019.
Warnung: Wenn Sie gerade ein Upgrade auf eine neue Version von macOS durchgeführt haben, stellen Sie sicher, dass Sie den neuesten Network Conditioner ( in den zusätzlichen Tools für Xcode ) installieren. Andernfalls kann dies unbeabsichtigt fehlschlagen . Das heißt, Sie werden es einschalten, aber es wird nichts drosseln oder Pakete verwerfen.
Update: Ab Xcode 11 gibt es möglicherweise eine noch einfachere Möglichkeit, die Netzwerkbedingungen auf angebundenen Geräten zu simulieren. siehe diesen Blog-Beitrag . Informationen zur Auswirkung auf simulierte Geräte finden Sie weiter unten.
Installieren Sie Xcode, wenn Sie es nicht haben.
Öffnen Sie Xcode und gehen Sie zu Xcode ›Entwickler-Tool öffnen› Weitere Entwickler-Tools…
Laden Sie zusätzliche Tools für Xcode herunter (passend zu Ihrer aktuellen Xcode-Version)
Öffnen Sie das heruntergeladene Disk-Image und doppelklicken Sie unter "Hardware" auf das Vorfeld "Network Link Conditioner", um es zu installieren.
Na, bitte!
Stellen Sie sicher, dass es eingeschaltet ist. Sie müssen ein Profil auswählen und den Netzwerkkonditionierer mit dem großen Schalter aktivieren, der aus dem Vorfenster von Time Machine bekannt sein sollte.
Vorbehalt
Dies hat keine Auswirkungen auf localhost. Verwenden Sie daher unbedingt einen Staging-Server oder den Computer eines Kollegen, um langsame Netzwerkverbindungen zu einer API zu simulieren, die Sie selbst ausführen. Möglicherweise ist https://ngrok.com/ in dieser Hinsicht hilfreich.
quelle
"Dafür gibt es eine App!" ;) Apple bietet den Einstellungsbereich "Network Link Conditioner" an, der die Aufgabe recht gut erledigt.
Developer
Ordner, z. B."/Developer/Applications/Utilities/Network Link Conditioner"
nach der Installation, wenn der Dämon nicht gestartet werden kann und Sie Ihren Computer nicht neu starten möchten, verwenden Sie einfachsudo launchctl load /system/library/launchdaemons/com.apple.networklinkconditioner.plist
Developer
Ordner bereits fertig sind , können Sie den Bereich als Teil des Pakets "Hardware-E / A-Tools für Xcode" installieren, das über den Abschnitt "Zusätzliche Downloads" für Mac Dev Center verfügbar ist.Link zur Download-Seite (Sie müssen sich mit Ihrer Apple ID anmelden): https://developer.apple.com/downloads/index.action
(Credits an @nverinaud)
quelle
Xcode
->Open Developer Tool
->More Developer Tools...
, melden Sie sich an, suchen Sie das neueste Archiv, laden Sie die Dateien herunter, kopieren Sie sie irgendwo hin, doppelklicken Sie auf das Einstellungsfenster von Network Conditioner, installieren Sie es. . Yay!Erwähnenswert ist auch, dass Xcode auch eine integrierte Methode für Geräte und keinen Simulator hat.
cmmd+shift+2
)Damit dies funktioniert, müssen Sie 'Network Link Conditioner' installieren. Siehe Schritte in Alans Antwort
quelle
Es gibt keinen direkten Weg, um eine langsame Verbindung zu emulieren, im Gegensatz zu dem netten Netzwerkverbindungsemulator, den Blackberry-Entwickler genießen. Da die Verbindung Ihres Simulators jedoch über Ihren Computer erfolgt, können Sie sich einfach darauf konzentrieren, die Verbindung Ihres Computers zu verlangsamen.
Sie möchten zwei Dinge erreichen (abhängig von Ihren Umständen):
Vielleicht weist Sie dies in die richtige Richtung:
http://www.macosxhints.com/article.php?story=20080119112509736
Es gibt auch einige gute Open Source-Lösungen, aber ich kann mich nicht an ihre Namen erinnern.
Diese Frage könnte helfen: Wie kann der Netzwerkverkehr für die Umgebungssimulation gedrosselt werden?
quelle
Ich würde argumentieren, dass eine langsame Verbindung nicht ausreicht, um das Verhalten eines mobilen Datennetzwerks in der Praxis zu simulieren - da es auch viel mehr Paketverlust, höhere Latenzen und mehr unterbrochene Verbindungen gibt.
Hier ist ein praktisches Skript zum Konfigurieren der Firewall zum Emulieren dieser Parameter:
http://pmilosev-notes.blogspot.com/2011/02/ios-simulator-testing-over-different.html
quelle