C'è un modo per rallentare la connessione Internet al simulatore di iPhone, in modo da imitare il modo in cui l'app potrebbe reagire quando ti trovi in un punto lento della rete cellulare?
C'è un modo per rallentare la connessione Internet al simulatore di iPhone, in modo da imitare il modo in cui l'app potrebbe reagire quando ti trovi in un punto lento della rete cellulare?
Risposte:
Failed to set speed limit
Queste istruzioni sono aggiornate a ottobre 2019.
Avvertenza: se hai appena effettuato l'aggiornamento alla nuova versione di macOS, assicurati di installare il condizionatore di rete più recente ( in Strumenti aggiuntivi per Xcode ) o potrebbe non riuscire in modo silenzioso ; cioè, lo accenderai ma non rallenterà nulla o lascerà cadere alcun pacchetto.
Aggiornamento: a partire da Xcode 11, potrebbe esserci un modo ancora più semplice per simulare le condizioni di rete su dispositivi collegati; vedi questo post sul blog . Per informazioni su come influire sui dispositivi simulati , continua di seguito, come in precedenza.
Installa Xcode se non lo hai.
Apri Xcode e vai a Xcode ›Apri strumento per sviluppatori› Altri strumenti per sviluppatori ...
Scarica strumenti aggiuntivi per Xcode (corrispondente alla versione corrente di Xcode)
Apri l'immagine del disco scaricata e fai doppio clic su Network Link Conditioner .prefpane in "Hardware" per installarlo.
Eccoci!
Assicurati di accenderlo. È necessario selezionare un profilo e abilitare il condizionatore di rete con l'interruttore grande che dovrebbe essere familiare dal prefpane di Time Machine.
Ciò non influirà su localhost, quindi assicurati di utilizzare un server di gestione temporanea o un computer di collaboratore per simulare connessioni di rete lente a un'API che stai eseguendo. È possibile che https://ngrok.com/ sia utile al riguardo.
"C'è un'app per questo!" ;) Apple fornisce il riquadro delle preferenze "Network Link Conditioner" che fa abbastanza bene il lavoro.
Developer
cartella, ad esempio "/Developer/Applications/Utilities/Network Link Conditioner"
dopo l'installazione, se il daemon non si avvia e non si desidera riavviare il computer, basta usare sudo launchctl load /system/library/launchdaemons/com.apple.networklinkconditioner.plist
Developer
cartella, puoi installare il riquadro come parte del pacchetto "Hardware IO Tools per Xcode" disponibile tramite la sezione download aggiuntivi di Mac Dev Center.Link alla pagina di download (è necessario accedere con il proprio ID Apple): https://developer.apple.com/downloads/index.action
(crediti a @nverinaud)
Xcode
-> Open Developer Tool
-> More Developer Tools...
, accedere, trovare l'ultimo archivio, scaricare, copiare i file da qualche parte, fare doppio clic sul riquadro delle preferenze del condizionatore di rete, installarlo. . Sìì!
Vale anche la pena ricordare che Xcode ha anche un modo integrato per i dispositivi , non per il simulatore.
cmmd+shift+2
)Per far funzionare tutto ciò è necessario installare 'Network Link Conditioner'. Vedi i passaggi menzionati nella risposta di Alan
Non esiste un modo diretto per emulare una connessione lenta, a differenza, diciamo, del simpatico emulatore di connessione di rete di cui godono gli sviluppatori di Blackberry. Tuttavia, poiché la connessione del tuo simulatore passa attraverso il tuo computer, puoi semplicemente concentrarti sul rallentamento della connessione del tuo computer.
Ti consigliamo di ottenere due cose (a seconda delle circostanze):
Forse questo ti indicherà la giusta direzione:
http://www.macosxhints.com/article.php?story=20080119112509736
Ci sono anche alcune buone soluzioni open source, ma non ricordo i loro nomi.
Questa domanda potrebbe aiutare: come limitare il traffico di rete per la simulazione ambientale?
Direi che una connessione lenta non è sufficiente per simulare il comportamento della rete di dati mobili di lavoro reale, poiché c'è anche molta più perdita di pacchetti, latenze più elevate e anche più connessioni interrotte.
Ecco un utile script per configurare il firewall per emulare questi parametri:
http://pmilosev-notes.blogspot.com/2011/02/ios-simulator-testing-over-different.html