Du kanns en iPhone net einfach un en entfernten Mac fir Xcode upaken
En entfernten Desktop weist dir Xcode, net den iPhone op dengem Dësch. Koppel d'Gerät mat dem Mac, dee baut, a behandel d'Entdeckung getrennt vum Transport.
Déi üblech Unhuel ass, datt eng Remote-Desktop-Sessioun de ganzen Entwécklungssetup op däin Laptop verréckelt. Si verréckelt de Bildschierm, d'Tastatur an d'Maus, an soss näischt. Den iPhone muss de Mac erreechen, op deem Xcode leeft, an dat ass eng separat Verbindung mat hire eegenen Ufuerderunge u Vertrauen, Transport a Berechtegung. Alles hei drënner follegt aus dëser Trennung, an an dëser Trennung verléieren déi meescht gescheitert Setups en Nomëtteg.
De Mythos: Fernsteuerung verréckelt d'Gerät och
Remote-Desktop-Software leet en Display an en Input-Stream weider, an op enger gudder Verbindung fillt et sech un, wéi wann de Mac virun dir sëtzt. Wat si awer net weiderleet, ass USB, an si setzt den Telefon och net an de Mac-Netzwierk. D'Sessioun endt um Mac-Desktop, wou den Xcode dann e Gerät no senge eigenen Reegele fannen muss. Unzehuelen, datt den Telefon mat de Pixel reest, ass dee heefegste Feeler an dëser Ariichtung.
Déi zwou Verbindungen sinn onofhängeg, an déi eng ka perfekt sinn, während déi aner guer net existéiert. D'Reparatur vun der Desktop-Sessioun seet dir näischt iwwer de Gerätewee.
Entscheet, wou den Telefon physikalesch ass, ier dir eppes konfiguréiert
Wann den Telefon niewent dem Mac bleift, maach do déi normal lokal Ariichtung: vertrau dem Computer, schalt den Entwécklermodus um Gerät an, a bestäteg, datt den Xcode drop baut a lafe léisst, während dir virun der Maschinn sëtzt. Duerno steiert den Remote-Desktop e Workflow, dee schonn funktionéiert. Dat ass déi bëllegst Ariichtung an déi, déi ze bevorzuge ass, wann d'Hardware et erlaabt.
Wann den Telefon mat dir reest an de Mac am Büro bleift, brauch de Mac ee ënnerstëtzte Wee zu deem Gerät. E VPN liwwert eng Netzwierkstreck tëscht deenen zwou Enden a liwwert soss näischt: Pairing, Entwécklermodus, Ënnerschrëftidentitéit an d'Geräteregistréierung bleiwen all separat Ufuerderungen. Betruecht den Tunnel als eng Schicht an engem Stack, net als d'Verbindung selwer.
Schreif op, an wéi enger vun den zwou Ariichtungen du bass. All spéider Kontroll hänkt dovun of, an d'Vermëschen vun hinnen produzéiert Fixen, déi net kënne funktionéieren.
Behandel Entdeckung an Transport als zwee verschidde Probleemer
Den Xcode fënnt gepaarte kabellos Geräter iwwer Bonjour am lokalen Netzwierk, an en erreecht och e Gerät op enger bekannter Adress iwwer Connect via IP Address. Dat sinn zwou Mechanismen mat zwou verschiddene Feelerbilder. En Gerät, dat ni an der Lëscht erschéngt, an en Gerät, dat erschéngt awer sech weigert, u sech ze befestegen, sinn net déiselwecht Symptomer, och wann se sech allebéid als fehlenden Telefon liesen.
Sich no der Annonce, ier dir eppes ännert: dns-sd -B _apple-mobdev2._tcp listet de Service op, deen en gepaarten Telefon um lokale Link publizéiert. Wann näischt erschéngt, ass d'Entdeckung déi futti Schicht an eng adressbaséiert Verbindung ass dee leschte Wee. Wann de Service erschéngt, den Xcode awer nach ëmmer net u sech befestegt, dann funktionéiert d'Entdeckung an den Transport oder d'Vertrauensverhältnis ass dat, wat feelt.
D'Apple-Hëllef fir kabellos Geräter deckt souwuel d'Ufuerderung vum selwechten Netzwierk wéi och den Adress-Workflow of, also lies se géint deng installéiert Versiounen, amplaz engem Menüwee ze follegen, un deen s du aus enger eelerer Verëffentlechung erënners. Menübezeechnunge verréckele sech tëscht Xcode-Verëffentlechungen, och wann de Mechanismus drënner net ännert.
Kontrolléier, wat de Mac vu senger Plaz aus gesäit
Laf d'Opzielung um Mac, net op dengem Laptop, well de Mac déi Maschinn ass, déi de Gerät brauch. xcrun devicectl list devices dréckt d'Geräter aus, déi den Xcode erreeche kann, an system_profiler SPUSBDataType weist, wat physikalesch ugeschloss ass. En Telefon, deen an der zweeter Lëscht erschéngt awer net an der éischter, ass ugeschloss an net gepaart, wat e Vertrauensproblem ass an net e Netzwierkproblem.
xcrun devicectl list devices
system_profiler SPUSBDataType | grep -i iphone
xcrun devicectl device info DEVICE_UDIDWann de Gerät op engem aneren Subnetz sëtzt, bestäteg, datt de Mac d'Adress erreeche kann, déi den Telefon publizéiert, a vergiess net, datt link-local IPv6-Adressen op ee Link begrenzt sinn a guer net iwwer en Tunnel geroutet ginn. Dofir mécht e VPN eleng en entfernten Telefon seelen erschéngen: d'Adress, déi de Gerät annoncéiert, ass nëmmen op sengem eegene Segment sënnvoll.
Den Apple-Technote TN3158 seet, datt den Xcode vun der Versioun 15 un iwwer eng Netzwierk-Interface mat engem ugeschlossene Gerät schwätzt, déi op link-local IPv6 opgebaut ass, sou datt lokal Filterung och bei engem physikalesch agepluggtem Telefon interferéiere kann. Eskipeier dee Fall un deen, deen d'Filterpolicitéit besëtzt, amplaz se selwer auszeschalten.
Beweis et mat engem Build, net mat engem Geräte-Icon
En Geräte-Andrag an enger Lëscht, en gréngen Indikator an der Toolbar oder en erfollegräiche Pairing-Prompt sinn Zwëschenobservatiounen. De Workflow ass beweise, wann den Xcode e erlaabte Build installéiert an den Debugger sech u Prozess befestegt, deen um Gerät leeft.
Laf déi komplett Sequenz vum Mac aus. xcrun devicectl device install app --device DEVICE_UDID build/MyApp.app installéiert ouni d'IDE, wat en Xcode-Interface-Problem vun engem Gerätewee-Problem trennt. Start d'App duerno a befesteg eng Konsole u se. Wann d'Installatioun vun der Kommandozeil funktionéiert an d'IDE net, ass de verbleiwwende Feeler am Schema oder an der Ënnerschrëftkonfiguratioun an net am Netzwierk.
Hal d'Ariichtung enk: een autoriséierten Entwéckler, ee registréierte Mac, een Gerät, an en Zougang, deen ophält, wann d'Sessioun ophält. Widderruff d'Zougangsdaten, wann d'Ariichtung ophält. Wann den Telefon einfach niewent dem Mac ka bleiwen, wiel dat amplaz, well dee einfachste ënnerstëtzte Wee dee mat de mannste Schichten ze debuggen ass.