Come si esegue il debug wireless in Xcode 9 con iOS 11, Apple TV 4K, ecc.?


347

Il debug wireless è stato recentemente aggiunto come funzionalità in Xcode 9, iOS 11 e tvOS 11. Apple TV 4K non ha una porta USB, quindi richiede il debug wireless. Come si esegue questo debug wireless in Xcode?


3
Qualcuno ha davvero avuto successo nel fare un debug wireless? Avevo seguito gli stessi passaggi, ma continua a mostrare che l'iPhone è disconnesso quando provo a fare un debug wireless. Il debug connesso funziona correttamente.
SeriousSam,

2
@SeriousSam Funziona. Devi essere sulla stessa rete.
badhanganesh,

Ho verificato il debug wireless, funziona bene
iPC

1
Ha funzionato qui anche usando un altro iPhone collegato come supporto WiFi.
Jonny,

1
La connessione viene disconnessa dopo 10-20 secondi !. Qualche idea, perché? Grazie!
UserID0908

Risposte:


599

Configurare un dispositivo per il debug della rete

da help.apple.com

NOTA: il sistema Mac e iPhone / iPad devono condividere la stessa rete per utilizzare il debug wireless.

Esegui il debug della tua app in esecuzione su un dispositivo iOS o tvOS tramite WiFi o altra connessione di rete.

Nota: il debug di rete richiede Xcode 9.0 o successivo in esecuzione su macOS 10.12.4 o successivo e sul dispositivo richiede iOS 11.0 o successivo o tvOS 11.0 o successivo .

Passaggi per configurare iPhone, iPad o iPod touch

  1. Scegli Finestra> Dispositivi e simulatori, quindi nella finestra visualizzata, fai clic su Dispositivi.

  2. Collega il tuo dispositivo al Mac con un cavo Lightning.

  3. Controlla se il passcode è abilitato nelle impostazioni del tuo dispositivo. Abilita se non già abilitato.
  4. Nella colonna di sinistra, seleziona il dispositivo e, nell'area dei dettagli, seleziona Connetti tramite rete.

    inserisci qui la descrizione dell'immagine

    Xcode si accoppia al tuo dispositivo. Se Xcode è in grado di connettersi con il dispositivo tramite una rete, viene visualizzata un'icona di rete accanto al dispositivo nella colonna di sinistra.

    inserisci qui la descrizione dell'immagine

  5. Disconnetti il ​​tuo dispositivo.

Nota: il dispositivo richiede un passcode per abilitare il debug remoto.

Ora sei pronto per il debug in rete.


Passaggi per configurare Apple TV:

  1. Assicurati che il tuo Mac e la tua Apple TV siano sulla stessa rete.

  2. Scegli Finestra> Dispositivi e simulatori, quindi nella finestra visualizzata, fai clic su Dispositivi.

  3. Su Apple TV, apri l'app Impostazioni e scegli Telecomandi e dispositivi> App e dispositivi remoti.

  4. Apple TV cerca possibili dispositivi incluso il Mac. (Se si dispone di sicurezza Firewall o Internet, disabilitare / disattivare per consentire la ricerca.)

  5. Sul Mac, seleziona Apple TV nel riquadro Dispositivi. Viene visualizzato il riquadro per Apple TV che mostra lo stato corrente della richiesta di connessione.

  6. Inserisci il codice di verifica visualizzato su AppleTV nel riquadro della finestra Dispositivo per il dispositivo e fai clic su Connetti.

Xcode imposta Apple TV per il debug wireless e si accoppia al dispositivo.

Modificare: -------

A volte l'associazione non funziona per il debug wireless, quindi riavvia il dispositivo e la connessione Internet. Inoltre, se il firewall è abilitato, è necessario disattivare Firewall per il dispositivo di associazione.

inserisci qui la descrizione dell'immagine

inserisci qui la descrizione dell'immagine


9
Per me inizialmente non funzionava. Ma quando ho riavviato il dispositivo ha iniziato a funzionare. Grazie Apple per il debug wifi :)
Vinay Kumar,

1
Riavvia e attendi brevemente che "iPhone fosse occupato" e funzioni.
Magnas,

4
@Lacek Secondo la mia comprensione non è possibile il debug wireless su VPN. Controllerà qualsiasi soluzione alternativa per farlo, se qualcosa viene aggiornato qui.
iPC

4
Osservazione super importante quando ci si collega ad Apple TV tramite rete: non funziona quando il Mac è collegato anche ad Apple TV tramite USB.
Ely,

2
@Luz Posso confermare che questa funzione può essere combinata con OpenVPN per eseguire il debug da un server remoto utilizzando una configurazione OpenVPN abbastanza standard su Mojave. Ho qualche dettaglio in più qui , ma se qualcuno ha bisogno di istruzioni dettagliate, non esitate a contattarmi.
fakedad

53

Ho provato a utilizzare la finestra Connetti tramite Xcode Devices tramite le opzioni di rete. ma non riesco a vedere l'icona "Connesso in rete" accanto al nome del dispositivo. inoltre, non appena si rimuove l'USB, l'opzione "Connetti tramite rete" scompare. inoltre, il nome del dispositivo viene visualizzato nell'elenco dei dispositivi disconnessi.

Ma usando l'opzione "Connetti tramite indirizzo IP ...", sono in grado di connettermi.

  1. Fare clic con il tasto destro del mouse sul nome del dispositivo (in Disconnected list) e selezionare l'opzione "Connetti tramite indirizzo IP ....".

inserisci qui la descrizione dell'immagine

  1. Digita l'indirizzo IP del dispositivo e scegli Connetti. (puoi trovare tramite Impostazioni dispositivo mobile> Wi-Fi> Scegli il nome del Wi-Fi) inserisci qui la descrizione dell'immagine

9
Quando inserisco IP e tocco 'Connetti', si sta caricando per sempre :(
Shyam

@Shyam Sia il telefono che il Mac usano lo stesso wifi? Controlla anche di utilizzare Xcode compatibile.
dannazione,

Sono abbastanza sicuro che entrambi stessero usando lo stesso WiFi e la versione Xcode sia 9.1, MacOS 10.13.1, iPhone 11.1. Spero che il problema fosse con la rete, ha funzionato quando ho usato reti diverse
Shyam,

Lo stesso con me. Ma alcune volte funziona e qualche volta non funziona ... Ho bisogno di chiudere e aprire il mio xcode più volte per funzionare. Entrambi utilizzavano la stessa versione WiFi e Xcode è 9.1, MacOS 10.13.1, iPhone 11.1.
Wagner Sales,

1
@Shyam ci vuole un po'..ma funziona, questa è l'unica soluzione che ha funzionato per me. Grazie maledizione!
GreaterKing

45

Se hai completato tutti i passaggi forniti da Surjeet e non ricevi ancora l'icona della connessione di rete, segui i passaggi seguenti:

  1. Annulla l'abbinamento del dispositivo usando il tasto destro del mouse sul dispositivo nella sezione Connesso .

    inserisci qui la descrizione dell'immagine

  2. Ricollegare il dispositivo.

  3. Fai clic sul pulsante "+" dalla fine del lato sinistro del popup.

inserisci qui la descrizione dell'immagine

  1. Seleziona il dispositivo e fai clic sul pulsante successivo

inserisci qui la descrizione dell'immagine

  1. Fai clic su Trust e passcode (se disponibile) dal dispositivo.

inserisci qui la descrizione dell'immagine

  1. Fai clic sul pulsante Fine .

inserisci qui la descrizione dell'immagine

  1. Ora, fai clic su Connetti tramite rete .

inserisci qui la descrizione dell'immagine

Ora puoi vedere l'icona della connessione di rete dopo il nome del dispositivo. Godere!

inserisci qui la descrizione dell'immagine


Ha qualche condizione come la limitazione della portata? perché quando l'ho collegato ha iniziato ad avviare la mia applicazione e si è disconnesso?
UserID0908

Non riesco a vedere l'icona della connessione di rete dopo il nome del dispositivo. Questo problema è legato alla connessione wifi?
pallavi

Sì, ha funzionato, suppongo sia perché era precedentemente accoppiato senza PASSCODE, ma quando abilitiamo il passcode nelle impostazioni del dispositivo dobbiamo ricollegare nuovamente il dispositivo
user924

forse sì, se il tuo dispositivo non è collegato tramite Wi
Fi

20

necessario

  • Il tuo computer Mac dovrebbe avere almeno Mac OSX 10.12.4 o successivo
  • Il tuo dispositivo iOS dovrebbe avere almeno iOS 11.0 o successivo
  • Entrambi i dispositivi dovrebbero essere sulla stessa rete.

I passaggi per l'attivazione

  • Collega il tuo dispositivo iOS alla macchina Mac dal cavo.

  • Apri Xcode quindi dal menu in alto Finestra -> Dispositivi e simulatori

  • Scegli il segmento Dispositivi e scegli il dispositivo desiderato dall'elenco dei dispositivi a sinistra.

  • Sul lato destro puoi vedere Connetti aperto tramite rete , abilita questa opzione come mostrato nell'immagine allegata. Connetti tramite rete

  • Dopo pochi secondi è possibile vedere il segno di rete davanti al dispositivo. inserisci qui la descrizione dell'immagine

  • Scollegare il dispositivo e utilizzare il debug come si usa normalmente.

Grazie


1
Hai letto la risposta di @ Surjeet? Questa risposta non aggiunge alcun valore notevole e rende il post superfluo.
elGeekalpha,

1
@elGeekalpha ho iniziato a seguire la risposta surjeet ma non ha menzionato la stessa rete per questo mi trovavo di fronte a un problema durante la connessione tramite rete. Sì, la mia risposta è ampia ma non superflua in quanto ho sbagliato gli altri utenti non lo faranno e anche questa risposta aiuterà anche i neofiti. Spero che tu capisca e anche altri ti aiuteranno: divertiti a
scrivere

Scusa, non volevo essere scortese, ma la prima impressione mi è sembrata che tu l'avessi scritto senza leggerlo. Grazie per la spiegazione e goditi anche il WWDC17!
elGeekalpha,

3
"Dopo pochi secondi puoi vedere il segnale di rete davanti al tuo dispositivo." <Questo dettaglio mi ha aiutato
Jonny,

1
Sono stato contento per le foto. "Mille parole" e tutto il resto.
Mel

16

Se dopo aver seguito i passaggi descritti da Surjeet non ancora a connetterti, prova a spegnere e riaccendere il Wi-Fi del tuo computer. Questo ha funzionato per me.

Inoltre, assicurati di fidarti del certificato dello sviluppatore sul dispositivo iOS (Impostazioni - Generale - Profili e gestione dispositivo - App sviluppatore).


8
Attivare il wi-fi sul computer ha aiutato
Miroslav Hrivik,

14

Il debug di rete richiede Xcode 9.0 o successivo in esecuzione su macOS 10.12.4 o successivo e sul dispositivo richiede iOS 11.0 o successivo o tvOS 11.0 o successivo.

i phone

iOS 11 non sarà disponibile per dispositivi a 32 bit , ad esempio iPhone 5 e iPhone 5c e precedenti. Il primo iPhone a 64 bit è 5s.

iPad

iPad mini 2 sarà il più vecchio iPad con supporto per iOS 11.

iPod

iPod deve essere un iPod 6 per poter eseguire iOS.

Se usi i tuoi dispositivi non solo per lo sviluppo ma anche per la produzione, tieni presente che un sistema operativo beta non è adatto ai deboli di cuore ;-)


2
iOS 11 è compatibile con questi dispositivi. iPhone iPhone 7 iPhone 7 Plus iPhone 6s iPhone 6s Plus iPhone 6 iPhone 6 Plus iPhone SE iPhone 5s iPad 12,9 pollici iPad Pro 2a generazione iPad 12 Pro 1a generazione iPad 10,5 pollici iPad Pro 9,7 pollici iPad Pro iPad Air 2 iPad Air iPad 5a generazione iPad mini 4 iPad mini 3 iPad mini 2 iPod iPod touch 6a generazione
Giang

iPad Air è attualmente supportato: il primo iPad a 64 bit.
Alex Black,

11

Nel nuovo Xcode9-beta, possiamo usare il debug wireless come detto da Apple :

Taglia il cavo
Scegli uno dei tuoi dispositivi iOS o tvOS sulla rete locale per installare, eseguire ed eseguire il debug delle tue app - senza un cavo USB collegato al Mac. È sufficiente fare clic sulla casella di controllo "Connetti tramite rete" la prima volta che si utilizza un nuovo dispositivo iOS e quel dispositivo sarà disponibile sulla rete da quel momento in poi. Lo sviluppo wireless funziona anche con altre app, tra cui Strumenti, Controllo accessibilità, Quicktime Player e Console.

Prova questo!

In caso di problemi di disconnessione , provare questo:

Soluzione alternativa : abilitare la modalità aereo sul dispositivo per 10 secondi, quindi disabilitare la modalità aereo per ristabilire la connessione


1
La risposta di @ Surjeet è molto più completa.
Jeremy1026,

@Lacek Non ne sono sicuro ma dubito che entrambi i dispositivi debbano essere collegati alla stessa rete WiFi.
D4ttatraya,

Dubito anche, ma una volta che sono stato sorpreso, qual è la soluzione al messaggio "Non scaricherò più di 100 MB su una rete cellulare" da iOS: vincoli il cellulare a un telefono cellulare (tramite USB) e lo condividi come un WIFI e poi iOS pensa che stia usando un WIFI ... Speravo in un hack simile, questa volta più coinvolto.
Lacek,

2
"Attiva la modalità aereo sul dispositivo per 10 secondi" Questo ha aiutato!
sabiland,

9

Ho appena parlato con alcuni ingegneri Xcode al WWDC e la scoperta automatica di iDevices è ancora un po 'buggy. Inoltre a volte il telefono non trasmette correttamente. Accendere e spegnere il dispositivo può essere d'aiuto.

Esistono alcune soluzioni alternative / fallback:

Puoi verificare se il tuo telefono sta trasmettendo con Bonjour Browser (www.tildesoft.com). Controlla se il tuo indirizzo wifi è elencato sotto il servizio chiamato '_apple-mobdev2._tcp. - 215 '(puoi trovare il tuo indirizzo wifi qui: impostazioni> generali> informazioni> indirizzo wifi.

Come fallback puoi connetterti al tuo dispositivo inserendo manualmente l'indirizzo IP (fai clic destro sui tuoi dispositivi nella finestra Dispositivi). Tuttavia, questo indirizzo IP sarà persistente, quindi se cambi rete devi resettarlo. Quell'opzione non è ancora disponibile in Xcode, ma puoi farlo tramite il terminale con il seguente comando:

defaults read com.apple.dt.Xcode | grep IDEIDS

Ciò stamperà un identificatore che è necessario utilizzare nel comando successivo:

defaults delete com.apple.dt.Xcode <identifier>

Ora l'indirizzo IP viene cancellato e puoi inserirne uno nuovo.

L'ultima opzione è quella di creare una rete da computer a computer. Funziona bene, ma logicamente non avrai accesso a Internet.


Sembra in beta 4 che non ci siano più opzioni per impostare manualmente l'IP. :( Per inciso, non sono riuscito a realizzare il mio iPhone 6s con beta 4 per connettermi a Xcode 9 beta 4.
Iur

1
Per poter vedere l'opzione di impostazione dell'indirizzo IP ho dovuto scollegare il dispositivo dalla porta USB
Dominic

5

È possibile aprire la Guida di Xcode -> Esegui e debug -> Debug di rete per ulteriori informazioni. Spero che sia d'aiuto.


5

ho seguito tutti i passaggi suggeriti, in particolare quelli forniti da ios_dev ma il mio iPhone non è stato riconosciuto da Xcode e non sono stato in grado di eseguire il debug tramite WiFi. Fai clic con il tasto destro sul pannello sinistro sul mio iDevice nella finestra "Dispositivi e simulatori", quindi "Connetti tramite indirizzo IP ...", inserito l'IP di iPhone e ora funziona correttamente


2
È importante notare: il dispositivo deve essere disconnesso dal sistema affinché questa opzione venga visualizzata.
MichaelC,

5

Per il debug wireless, il sistema Mac e iPhone / dispositivo devono essere sulla stessa rete. Per fare sulla stessa rete puoi fare come: O puoi avviare hotspot su Mac e collegarlo su iPhone / dispositivo o viceversa.

Su Mac

inserisci qui la descrizione dell'immagine

O

Su iPhone -

inserisci qui la descrizione dell'immagine

Xcode ► Finestra ► Dispositivi e simulatori ► selezionare la scheda Dispositivi ► fare clic su Connetti tramite rete inserisci qui la descrizione dell'immagine

https://help.apple.com/xcode/mac/9.0/index.html?localePath=en.lproj#/devbc48d1bad


Quando il mio iPhone XS Max è impostato su Personal Hotspot e collego il mio macbook pro ad esso, non riesco quindi a utilizzare l'iPhone come dispositivo di debug. L'unico caso di debug wireless che funziona per me è collegarli entrambi allo stesso router wifi. Questo è molto fastidioso durante la programmazione in movimento. Devo sempre portare un cavo con me.
Vilmir,

4

Il mio problema riguardava la trasmissione in rete SSID.

Ho provato tutte le soluzioni sopra ma ancora non riesco a connettere il mio dispositivo, non c'era alcuna icona 'globo' per il mio dispositivo. Poi ho scoperto che per qualche motivo la mia rete aveva disattivato la sua trasmissione SSID (anche se potevo ancora connettere la rete inserendo l'SSID manualmente). Una volta attivata la trasmissione SSID, ho potuto connettere il mio dispositivo tramite "Connetti tramite indirizzo IP ...".


Fornisci una descrizione più completa del problema riscontrato. Almeno come risolve la domanda su "come eseguire il debug wireless?" Se si tratta di un problema separato, crea una nuova domanda e rispondi
Dhruvan Ganesh,

3

Ho provato tutte le risposte ma niente ha funzionato per me. Ho finito per connettermi a diverse reti WiFi, quindi sono stato in grado di eseguire il debug in modalità wireless.

Non ho idea del perché non abbia funzionato con la vecchia rete


Non ha funzionato per me sulla mia rete. La connessione al bluetooth ha sigillato l'affare ... non sono sicuro che abbia aiutato in alcun modo o in che modo ...
Swift Rabbit

2

Xcode 9 - Per informazioni dettagliate vai alla Guida -> Associa un dispositivo wireless a Xcode (iOS, tvOS)


2

L'unica cosa che ha funzionato per me è stata quella di collegare il mio telefono al mio MacBook tramite Bluetooth. (L'ho fatto dopo aver accoppiato il mio telefono con Xcode mentre ero collegato via cavo in base alla risposta di ios_dev sopra.)

Sul mio telefono, sono andato su Impostazioni> Bluetooth e ho toccato il nome del mio MacBook in "I MIEI DISPOSITIVI" per connettersi.

Sono quindi passato a Xcode> Dispositivi e simulatori, ho selezionato il mio telefono e verificato "Connetti tramite rete". Dopo alcuni secondi, l'icona del globo è apparsa accanto al mio telefono e ho potuto eseguire ed eseguire il debug della mia app sul mio telefono.

Funzionava anche quando il mio MacBook era collegato a una rete WiFi e il mio telefono utilizzava LTE. L'unico aspetto negativo è che l'installazione dell'app sul telefono è stata piuttosto lenta.


Infatti! Dopo aver provato tutto il resto, la connessione al mio Mac in bluetooth ha funzionato all'istante.
Johnny Oin,

1

L'unico modo per farlo funzionare è se il mio Mac e il mio iPhone fossero su reti diverse . Ho un modem DSL principale che lo chiama network1 e una seconda rete2 ci configura un punto di accesso. Hanno SSID network1 e network2. Se il telefono fosse in rete1 e il mac in rete2 funzionerebbe, o viceversa. Ma se entrambi fossero su network1 o entrambi su network2, NON funzionerebbe.


1

Abilita condivisione Internet utilizzando le porte USB:

inserisci qui la descrizione dell'immagine


1

Prova questo:

1) Collega il tuo dispositivo iOS al Mac usando un cavo Lightning. Potrebbe essere necessario selezionare Trust to Computer sul dispositivo.

2) Apri Xcode e vai su Finestra > Dispositivi e simulatori .

3) Seleziona il tuo dispositivo e quindi seleziona Connetti tramite rete casella di controllo per associare il dispositivo.

4) Eseguire il progetto dopo aver rimosso il cavo di illuminazione.


1

LOL, stavo facendo tutti i passaggi qui - ho finito per fare i passaggi spauranti / riparatori dalla risposta "data da Surjeet". Non ha funzionato, e poi ho notato che quando ho fatto clic sul pulsante "Connetti tramite rete", si apriva la stessa casella gialla che si apre quando si ripara, dicendo "occupato" - Sono stato frustrato e ho appena iniziato a martellare il " Connetti tramite rete ", facendo clic rapidamente per probabilmente 15-20 clic - ha iniziato a spazzare via, ma alla fine è riuscito a connettersi alla rete. Prima che funzionasse, ho anche spento il mio wifi e riacceso, come suggerito da una di queste risposte, ma facendo clic sul pulsante "Connetti tramite rete" ha funzionato molto velocemente ... LOL

Inoltre, prima di premere il pulsante, ho collegato le cartelle di supporto del dispositivo, anche se non sono sicuro che abbia fatto qualcosa:

aprire il terminale

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

ls -s 13.3 13.4

ls -l 13.4

riavvia Xcode e riprova eseguito sul dispositivo

Ho detto di farlo qui - https://forums.developer.apple.com/thread/126940 - Ho modificato la versione della cartella nel mio commento per adattarmi all'ultima versione di iOS 13.4.

EDIT Credo di aver capito quale fosse il mio problema, ho dovuto interrompere il mio Little Snitchfiltro di rete. Inoltre, dopo che sono stato in grado di connettermi martellando il pulsante, l'opzione "Connetti tramite indirizzo IP" è stata visualizzata nel menu a discesa quando fai clic con il pulsante destro del mouse sul dispositivo in Gestione dispositivi in ​​xcode, non era lì prima che potessi connettermi stile ultra hacky per la prima volta. Se mi connetto, quindi accendo il filtro di rete, questo disconnette il mio telefono.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.