Adi fərziyyə budur ki, uzaq masaüstü sessiyası bütün inkişaf mühitini laptopunuza köçürür. O, ekranı, klaviaturanı və siçanı köçürür, başqa heç nə. iPhone Xcode işlədən Mac-a çatmalıdır və bu, öz etimad, nəqliyyat və icazə tələbləri olan ayrı bir bağlantıdır. Aşağıdakı hər şey bu bölgüdən irəli gəlir və uğursuz qurulumların çoxu məhz burada bir günorta itirir.

Mif: uzaqdan idarəetmə cihazı da köçürür

Uzaq masaüstü proqramı ekran və giriş axını ötürür, yaxşı bağlantıda Mac elə bil qarşınızda oturur. Ötürmədiyi şey USB-dir və telefonu Mac şəbəkəsinə də yerləşdirmir. Sessiya Mac masaüstündə bitir, orada Xcode cihazı öz qaydaları ilə tapmalıdır. Telefonun piksellərlə birlikdə getdiyini güman etmək bu quruluşda ən çox yayılan səhvdir.

İki bağlantı müstəqildir və biri mükəmməl ola bilər, digəri isə heç mövcud olmaya bilər. Masaüstü sessiyasını düzəltmək cihaz yoluna dair sizə heç nə demir.

Nəyisə qurmazdan əvvəl telefonun fiziki olaraq harada olduğunu müəyyənləşdirin

Əgər telefon Mac-ın yanında qalırsa, adi yerli qurulumu orada edin: kompüterə etibar edin, cihazda developer rejimini aktivləşdirin və maşının qarşısında oturarkən Xcode-un ona qurub işlətdiyini təsdiqləyin. Bundan sonra uzaq masaüstü artıq işləyən bir iş axınına nəzarət edir. Bu, ən ucuz quruluşdur və avadanlıq imkan verdikcə üstün tutulmalı olan variantdır.

Əgər telefon sizinlə səyahət edir və Mac ofisdə qalırsa, Mac-ın həmin cihaza dəstəklənən yol tapması lazımdır. VPN iki tərəf arasında şəbəkə marşrutu verir və başqa heç nə vermir: cütləşdirmə, developer rejimi, imza kimliyi və cihaz qeydiyyatı hamısı ayrı tələblər olaraq qalır. Tuneli bağlantının özü kimi deyil, yığımdakı bir təbəqə kimi qəbul edin.

Bu iki quruluşdan hansında olduğunuzu yazın. Hər sonrakı yoxlama bundan asılıdır və onları qarışdırmaq işləməsi mümkün olmayan düzəlişlər yaradır.

Aşkarlama və nəqliyyatı iki ayrı problem kimi qəbul edin

Xcode cütləşdirilmiş simsiz cihazları yerli şəbəkədə Bonjour vasitəsilə tapır və həmçinin Connect via IP Address ilə tanınan ünvanda olan cihaza çata bilir. Bunlar iki fərqli uğursuzluq rejimi olan iki mexanizmdir. Siyahıda heç görünməyən cihazla görünüb qoşulmaqdan imtina edən cihaz eyni simptom deyil, baxmayaraq ki, hər ikisi itkin telefon kimi oxunur.

Nəyisə dəyişməzdən əvvəl elanı axtarın: dns-sd -B _apple-mobdev2._tcp cütləşdirilmiş telefonun yerli keçiddə yayımladığı xidməti sadalayır. Heç nə görünmürsə, pozulmuş təbəqə aşkarlamadır və ünvan əsaslı bağlantı qalan yeganə yoldur. Xidmət görünür, amma Xcode hələ də qoşula bilmirsə, aşkarlama işləyir və uğursuz olan nəqliyyat və ya etimad münasibətidir.

Apple-ın simsiz cihaz yardımı həm eyni şəbəkə tələbini, həm də ünvan iş axınını əhatə edir, ona görə onu köhnə buraxılışdan xatırladığınız menyu yolunu izləmək əvəzinə quraşdırılmış versiyalarınıza uyğun oxuyun. Mexanizm dəyişməsə də menyu etiketləri Xcode buraxılışları arasında dəyişir.

Mac-ın öz yerindən nə görə bildiyini yoxlayın

Sadalamaları laptopunuzda deyil, Mac-da aparın, çünki cihaza ehtiyacı olan maşın Mac-dır. xcrun devicectl list devices Xcode-un çata bildiyi cihazları çap edir, system_profiler SPUSBDataType isə fiziki olaraq qoşulmuş olanı göstərir. İkinci siyahıda görünüb birincidə görünməyən telefon qoşulub, amma cütləşdirilməyib və bu, şəbəkə deyil, etimad problemidir.

xcrun devicectl list devices
system_profiler SPUSBDataType | grep -i iphone
xcrun devicectl device info DEVICE_UDID

Cihaz başqa alt şəbəkədədirsə, Mac-ın telefonun yayımladığı ünvana çata bildiyini təsdiqləyin və yadda saxlayın ki, link-local IPv6 ünvanları bir keçidlə məhdudlaşır və tunel üzərindən marşrutlaşdırıla bilməz. Buna görə tək VPN uzaq telefonu nadir hallarda görünən edir: cihazın elan etdiyi ünvan yalnız öz seqmentində məna daşıyır.

Apple-ın TN3158 texniki qeydi bildirir ki, Xcode 15 versiyasından etibarən kabelli cihazla link-local IPv6 üzərində qurulmuş şəbəkə interfeysi vasitəsilə danışır, ona görə yerli filtrləmə fiziki olaraq qoşulmuş telefona belə mane ola bilər. Bu halı filtrləmə siyasətinin sahibinə eskalasiya edin, özünüz onu söndürməyin.

Bunu cihaz ikonu ilə deyil, build ilə sübut edin

Siyahıdakı cihaz qeydi, alət panelindəki yaşıl göstərici və ya uğurlu cütləşdirmə sorğusu aralıq müşahidələrdir. İş axını yalnız o zaman sübut olunur ki, Xcode icazəli build quraşdırır və sazlayıcı cihazda işləyən prosesə qoşulur.

Tam ardıcıllığı Mac-dan işlədin. xcrun devicectl device install app --device DEVICE_UDID build/MyApp.app IDE olmadan quraşdırır və bununla Xcode interfeys problemi cihaz yolu probleminə qarışmır. Sonra tətbiqi işə salın və ona konsol qoşun. Əmr sətri quraşdırması işləyir, IDE işləmirsə, qalan nasazlıq şəbəkədə deyil, sxemdə və ya imzalama konfiqurasiyasındadır.

Quruluşu dar saxlayın: bir səlahiyyətli developer, bir qeydiyyatdan keçmiş Mac, bir cihaz və sessiya bitəndə bitən giriş. Quruluş dayandıqda etimad məlumatlarını ləğv edin. Əgər telefon sadəcə Mac-ın yanında qala bilirsə, onu seçin, çünki ən sadə dəstəklənən yol sazlanmalı ən az təbəqə qalan yoldur.

Əlaqəli məqalələr