iOS kullanarak derlemeye yönelik araçları yükleme ve yapılandırma
iOS kodunu düzenlemek, hatalarını ayıklamak ve iOS simülatörüne veya bir iOS cihazına dağıtmak için C++ araçlarıyla platformlar arası Mobil geliştirme ile Visual Studio'yu kullanabilirsiniz. Ancak lisanslama kısıtlamaları nedeniyle kodun Mac'te uzaktan derlenip çalıştırılması gerekir. Visual Studio kullanarak iOS uygulamaları oluşturmak ve çalıştırmak için Mac bilgisayarınızda vcremote uzak aracısını ayarlamanız ve yapılandırmanız gerekir. vcremote uzak aracısı Visual Studio'dan gelen derleme isteklerini işler ve uygulamayı Mac'e bağlı bir iOS cihazında veya Mac'teki iOS Simülatörü'nde çalıştırır.
Not
Mac yerine bulutta barındırılan Mac hizmetlerini kullanma hakkında bilgi için bkz . Visual Studio'yu bulutta barındırılan Mac'inize bağlanacak şekilde yapılandırma. Yönergeler Apache Cordova için Visual Studio Araçları kullanarak derlemeye yönelik yönergelerdir. C++ kullanarak derleme yönergelerini kullanmak için remotebuild
yerine vcremote
yazın.
iOS kullanarak derleme araçlarını yükledikten sonra bu makaleye yeniden bakın. Visual Studio'da ve Mac'inizde iOS geliştirmesi için vcremote'yi hızlı bir şekilde yapılandırmanın ve güncelleştirmenin yollarını açıklar.
Önkoşullar
iOS için kod geliştirmek üzere vcremote uzak aracısını yüklemek ve kullanmak için öncelikle şu önkoşullara sahip olmanız gerekir:
macOS Mojave sürüm 10.14 veya üzerini çalıştıran bir Mac bilgisayar
Apple Kimliği
Etkin bir Apple Geliştirici Programı hesabı
Uygulamaları yalnızca test etmek üzere iOS cihazına dışarıdan yüklemeye izin veren ancak dağıtım için olmayan ücretsiz bir hesap alabilirsiniz.
Xcode sürüm 10.2.1 veya üzeri
Xcode, App Store'dan indirilebilir.
Xcode komut satırı araçları
Xcode komut satırı araçlarını yüklemek için Mac bilgisayarınızda Terminal uygulamasını açın ve aşağıdaki komutu girin:
xcode-select --install
Xcode'da uygulamaları imzalamak için imzalama kimliği olarak yapılandırılan apple kimliği hesabı
Xcode'da imzalama kimliğinizi görmek veya ayarlamak için Xcode menüsünü açın ve Tercihler'i seçin. Hesaplar'ı seçin, Apple kimliğinizi seçin ve ardından Ayrıntıları Görüntüle düğmesini seçin. Ayrıntılı yönergeler için bkz . Apple Kimliği hesabınızı ekleme.
İmzalama gereksinimleri hakkında ayrıntılı bilgi için bkz . Uygulama imzalama nedir?
Geliştirme için bir iOS cihazı kullanıyorsanız cihazınız için Xcode'da yapılandırılmış bir sağlama Profili
Xcode, gerektiğinde sizin için imzalama sertifikaları oluşturduğu otomatik imzalama sağlar. Xcode otomatik imzalama hakkında ayrıntılı bilgi için bkz . otomatik imzalama.
El ile imzalama yapmak istiyorsanız, uygulamanız için bir sağlama Profili oluşturmanız gerekir. Sağlama Profilleri oluşturma hakkında ayrıntılı bilgi için bkz . Geliştirme sağlama profili oluşturma.
Node.js sürüm 18.12.1 ve npm sürüm 8.19.2
Mac bilgisayarınıza Node.js sürüm 18.12.1'i yükleyin. Node.js paketini yüklerseniz, npm sürüm 8.19.2 ile birlikte gelmelidir. Node.js ve npm'nin diğer sürümleri vcremote'de kullanılan bazı modülleri desteklemeyebilir ve bu da vcremote yüklemesinin başarısız olmasına neden olabilir. Node Version Manager gibi bir paket yöneticisi kullanarak Node.js yüklemenizi öneririz. Bazı modüller sudo kullanırken yüklenememesi nedeniyle Node.js yüklemek için komutunu
sudo
kullanmaktan kaçının.
iOS için vcremote yükleme
C++ iş yüküyle Mobil geliştirmeyi yüklediğinizde, Visual Studio dosyaları aktarmak, iOS uygulamanızı derleyip çalıştırmak ve hata ayıklama komutları göndermek için Mac bilgisayarınızda çalışan vcremote uzak aracısı ile iletişim kurabilir.
vcremote'yi yüklemeden önce Önkoşullar'ı karşıladığınızdan ve C++ ile platformlar arası mobil geliştirme yükleme konusundaki yükleme adımlarını tamamladığınızdan emin olun.
vcremote'yi indirmek ve yüklemek için
Mac bilgisayarınızdaki Terminal uygulamasından, şu anda kullanımda olan Node.js sürümünün gerekli 18.12.1 sürümü olduğunu doğrulayın. Sürümü doğrulamak için komutunu çalıştırın:
node -v
Doğru sürüm değilse, önkoşullardaki Node.js yükleme yönergelerini izlemeniz gerekebilir. Ardından Node.js yeniden başlatın.
Gerekli Node.js kullanımda olduğunu doğruladıktan sonra, bu Node.js sürümünün altına vcremote yüklemek için şu komutu çalıştırın:
npm install -g --unsafe-perm vcremote
Genel yükleme (-g) anahtarı önerilir, ancak gerekli değildir. Genel yükleme anahtarını kullanmıyorsanız vcremote, Terminal uygulamasındaki geçerli etkin yol altına yüklenir.
Yükleme
vcremote
sırasında yüklenir ve Mac bilgisayarınızda geliştirici modu etkinleştirilir. Homebrew ve iki npm paketivcremote-lib
vevcremote-utils
de yüklenir. Yükleme tamamlandığında, atlanan isteğe bağlı bağımlılıklarla ilgili uyarıları yoksaymak güvenlidir.Not
Homebrew'u yüklemek için sudo (yönetici) erişiminiz olmalıdır. Sudo olmadan vcremote yüklemeniz gerekiyorsa, Homebrew'u bir
usr/local
konuma el ile yükleyebilir ve klasörünü yolunuza ekleyebilirsinizbin
. Daha fazla bilgi için Homebrew belgelerine bakın. Geliştirici modunu el ile etkinleştirmek için Terminal uygulamasına şu komutu girin:DevToolsSecurity -enable
Visual Studio'nun yeni bir sürümüne güncelleştirirseniz, vcremote'nin geçerli sürümüne de güncelleştirmeniz gerekir. vcremote'yi güncelleştirmek için uzak aracıyı indirme ve yükleme adımlarını yineleyin.
Başlangıç vcremote
Visual Studio'nun iOS kodunuzu derlemesi ve çalıştırması için vcremote uzak aracısının çalışıyor olması gerekir. Visual Studio iletişim kurabilmesi için önce vcremote ile eşleştirilmelidir. Varsayılan olarak, vcremote, istemci ve sunucu sertifikalarının Visual Studio ve Mac makineleri arasında aktarılmasını gerektiren güvenli bağlantı modunda çalışır.
Not
Vcremote sürüm 1.0.19 veya üzeri için en az Visual Studio 2022 sürüm 17.5.0 Önizleme 1 veya üzeri gerekir. Visual Studio 2022 sürüm 17.4 veya önceki bir sürümü kullanıyorsanız vcremote sürüm 1.0.17'yi yükleyin.
vcremote'yi başlatmak için
Mac bilgisayarınızdaki Terminal uygulamasında şunu girin:
vcremote
Bu komut, uzak aracıyı varsayılan derleme diziniyle
~/vcremote
başlatır. Diğer yapılandırma seçenekleri için bkz . Mac'te vcremote'yi yapılandırma.
vcremote'yi ilk kez başlattığınızda ve her yeni sunucu sertifikası oluşturduğunuzda, Visual Studio'da bağlantıyı yapılandırmak için gerekli bilgiler sağlanır. Bilgiler ana bilgisayar adını ve bağlantı noktasını içerir. Visual Studio'da uzak aracıyı konak adını kullanarak yapılandırmayı planlıyorsanız, mac'e ulaşılabilir olduğunu doğrulamak için ana bilgisayar adını kullanarak Windows'tan ping gönderin. Aksi takdirde, bunun yerine IP adresini kullanmanız gerekebilir.
Uzak aracıyı güvenli olmayan modda kullanabilirsiniz. Güvenli olmayan modda, uzak aracı verileri şifrelemeyen basit bir HTTP bağlantısı kullanılarak Visual Studio ile eşleştirilebilir. Güvenli olmayan modu kendi riski altında kullanın. Bağlanmak için güvenli mod kullanmanızı öneririz:
Visual Studio 2022 sürüm 17.5 ve üzeri ile vcremote 1.0.19 ve üzeri:
vcremote 1.0.19 ve sonraki sürümlerinde vcremote, Visual Studio'ya yüklenmesi gereken bir server-cert.pem
sertifika dosyasının yolunu bildirir.
Visual Studio 2022 sürüm 17.4 ve vcremote 1.0.17 ve önceki sürümleri:
Sürüm 1.0.17 ve vcremote'nin eski sürümleri, Visual Studio 2022 sürüm 17.4 aracılığıyla Visual Studio sürümleriyle güvenli iletişim için bir PIN oluşturur.
Oluşturulan PIN bir kerelik kullanım içindir ve yalnızca sınırlı bir süre için geçerlidir. Süre dolmadan önce Visual Studio'yu uzak aracıyla eşleştirmezseniz yeni bir PIN oluşturmanız gerekir. Daha fazla bilgi için bkz . Yeni güvenlik PIN'i oluşturma.
Güvenli bağlantı modunu devre dışı bırakmak için
vcremote'de güvenli bağlantı modunu devre dışı bırakmak için Mac bilgisayarınızdaki Terminal uygulamasına şu komutu girin:
vcremote --secure false
Güvenli bağlantı modunu etkinleştirmek için
Güvenli bağlantı modunu etkinleştirmek için şu komutu girin:
vcremote --secure true
Uzak aracıyı başlattıktan sonra, durdurana kadar Visual Studio'dan kullanabilirsiniz.
Uzak aracıyı durdurmak için
- vcremote'nin içinde çalıştığı Terminal penceresine Control+C girin.
Visual Studio'da vcremote'yi yapılandırma
Visual Studio'dan vcremote uzak aracısına bağlanmak için, Visual Studio seçeneklerinde uzak yapılandırmayı belirtmeniz gerekir. Visual Studio, Mac'inizi her kullandığınızda uzak aracıya bağlanmak için aynı bilgileri kullanır. Mac bilgisayarınızda yeni bir güvenlik sertifikası veya ana bilgisayar adı veya IP adresi değişiklikleri oluşturmadığınız sürece Visual Studio'yu uzak aracıyla yeniden eşleştirmeniz gerekmez.
Visual Studio 2022 sürüm 17.5 ve sonraki sürümlerden vcremote'yi yapılandırmak için
Aracı Mac bilgisayarınızda zaten çalışmıyorsa Uzak aracıyı başlatma sayfasındaki adımları izleyin. Projenizi başarıyla eşleştirmek, bağlamak ve derlemek için Mac'inizin Visual Studio için vcremote çalıştırıyor olması gerekir.
Mac bilgisayarınızda, Mac bilgisayarınızın ana bilgisayar adını veya IP adresini alın.
Terminal penceresinde ifconfig komutunu kullanarak IP adresini alabilirsiniz.
inet
Etkin ağ arabirimi altında listelenen adresi kullanın.Visual Studio menü çubuğunda Araçlar>Seçenekleri'ni seçin.
Seçenekler iletişim kutusunda Platformlar>Arası C++>iOS'ı genişletin.
Konak Adı ve Bağlantı Noktası alanlarına, aracıyı başlatırken uzak aracı tarafından belirtilen değerleri girin. Ana bilgisayar adı, Mac'inizin DNS adı veya IP adresi olabilir. Varsayılan bağlantı noktası 3030'dur.
Not
Mac'e ana bilgisayar adını kullanarak ping atamıyorsanız IP adresini kullanmanız gerekebilir.
Uzak aracıyı varsayılan güvenli bağlantı modunda kullanıyorsanız Güvenli onay kutusunu işaretleyin ve dosyayı karşıya yüklemek üzere Mac'ten Visual Studio'ya aktarın
server-cert.pem
. Ardından Oluştur düğmesini seçerek masaüstünde görünmesi gereken yeniclient-cert.pem
bir dosya oluşturun. Ardından, altında istemci sertifikasını Mac'e/vcremote/certs/Authorized-Clients
aktarın. (Birden çok istemci sertifika dosyasını bu dizine aktarabilirsiniz, böylece birden çok yetkili Visual Studio makinesi bu Mac'e istek gönderebilir.)Not
Sertifikaları aktarmak için bir USB sürücüsü kullanıyorsanız, aktarım tamamlandıktan sonra sertifikaları USB sürücüsünden silin.
Eşleştirmeyi etkinleştirmek için Eşleştir'i seçin.
Ana bilgisayar adını, bağlantı noktasını değiştirene veya yeni bir sunucu ya da istemci sertifikası oluşturana kadar eşleştirme devam eder. Seçenekler iletişim kutusunda ana bilgisayar adını veya bağlantı noktasını değiştirirseniz, geri al düğmesini seçerek değişikliği geri alabilir ve önceki eşleştirmeye dönebilirsiniz.
Eşleştirme başarılı olmazsa, Uzak aracıyı başlatma'daki adımları izleyerek uzak aracının çalıştığını doğrulayın. Yeni sunucu sertifikası oluşturma ve Yeni istemci sertifikası oluşturma adımlarını izleyin. Mac bilgisayarınızın ana bilgisayar adını kullanıyorsanız, bunun yerine Ana Bilgisayar Adı alanındaki IP adresini kullanmayı deneyin.
Mac'teki giriş (
~
) dizininizdeki uzak aracı tarafından kullanılan klasörü belirtmek için Uzak Kök alanındaki klasör adını güncelleştirin. Varsayılan olarak, uzak aracı uzak kök olarak kullanır/Users/<username>/vcremote
.Uzaktan eşleştirme bağlantısı ayarlarını kaydetmek için Tamam'ı seçin.
Visual Studio 2022 sürüm 17.5'ten önceki sürümlerden vcremote'yi yapılandırmak için
Aracı Mac bilgisayarınızda zaten çalışmıyorsa Uzak aracıyı başlatma sayfasındaki adımları izleyin. Projenizi başarıyla eşleştirmek, bağlamak ve derlemek için Mac'inizin Visual Studio için vcremote çalıştırıyor olması gerekir.
Mac bilgisayarınızda, Mac bilgisayarınızın ana bilgisayar adını veya IP adresini alın.
Terminal penceresinde ifconfig komutunu kullanarak IP adresini alabilirsiniz.
inet
Etkin ağ arabirimi altında listelenen adresi kullanın.Visual Studio menü çubuğunda Araçlar>Seçenekleri'ni seçin.
Seçenekler iletişim kutusunda Platformlar>Arası C++>iOS'ı genişletin.
Konak Adı ve Bağlantı Noktası alanlarına, aracıyı başlatırken uzak aracı tarafından belirtilen değerleri girin. Ana bilgisayar adı, Mac'inizin DNS adı veya IP adresi olabilir. Varsayılan bağlantı noktası 3030'dur.
Not
Ana bilgisayar adını kullanarak Mac'e ping atamıyorsanız IP adresini kullanmanız gerekebilir.
Uzak aracıyı varsayılan güvenli bağlantı modunda kullanıyorsanız Güvenli onay kutusunu işaretleyin, ardından Sabitle alanına uzak aracı tarafından belirtilen PIN değerini girin. Uzak aracıyı güvenli olmayan bağlantı modunda kullanıyorsanız Güvenli onay kutusunu temizleyin ve Sabitle alanını boş bırakın.
Eşleştirmeyi etkinleştirmek için Eşleştir'i seçin.
Ana bilgisayar adını veya bağlantı noktasını değiştirene kadar eşleştirme devam eder. Seçenekler iletişim kutusunda konak adını veya bağlantı noktasını değiştirirseniz, değişikliği geri almak için Önceki eşleştirmeye dönmek için Geri Döndür düğmesini seçin.
Eşleştirme başarılı olmazsa, Uzak aracıyı başlatma'daki adımları izleyerek uzak aracının çalıştığını doğrulayın. Uzak aracı PIN'i oluşturulduktan sonra çok fazla zaman geçtiyse Yeni güvenlik PIN'i oluşturma bölümünde yer alan adımları izleyin. Ardından yeniden deneyin. Mac bilgisayarınızın ana bilgisayar adını kullanıyorsanız, bunun yerine Ana Bilgisayar Adı alanındaki IP adresini kullanmayı deneyin.
Mac'teki giriş (
~
) dizininizdeki uzak aracı tarafından kullanılan klasörü belirtmek için Uzak Kök alanındaki klasör adını güncelleştirin. Varsayılan olarak, uzak aracı uzak kök olarak kullanır/Users/<username>/vcremote
.Uzaktan eşleştirme bağlantısı ayarlarını kaydetmek için Tamam'ı seçin.
Yeni bir güvenlik PIN'i oluşturma
Şunlar için geçerlidir: vcremote sürüm 1.0.17 ve önceki sürümleri kullanan Visual Studio 2022 sürüm 17.4 ve önceki sürümleri.
Uzak aracıyı ilk kez başlattığınızda, oluşturulan PIN sınırlı bir süre boyunca (varsayılan olarak 10 dakika) geçerlidir. Süre dolmadan önce Visual Studio'yu uzak aracıyla eşleştirmezseniz yeni bir PIN oluşturmanız gerekir.
Yeni bir PIN oluşturmak için
Aracıyı durdurun veya Mac bilgisayarınızda ikinci bir Terminal uygulaması penceresi açın ve komutunu girmek için bunu kullanın.
Terminal uygulamasına şu komutu girin:
vcremote generateClientCert
Uzak aracı yeni bir geçici PIN oluşturur. Yeni PIN'i kullanarak Visual Studio'yu eşleştirmek için, Visual Studio'da uzak aracıyı yapılandırma bölümünde yer alan adımları yineleyin.
Yeni bir istemci sertifikası oluşturma
Şunlar için geçerlidir: vcremote sürüm 1.0.19 ve üzerini kullanan Visual Studio 2022 sürüm 17.5 ve üzeri sürümler.
Visual Studio'da eşleştirdiğinizde yeni client-cert.pem
bir dosya oluşturacaksınız. Sertifika dosyasını altındaki /vcremote/certs/Authorized-Clients
Mac derleme makinesine aktarın. Bu sertifika, Mac'in Visual Studio makinenizden gelen istekleri yetkilendirmesine olanak tanır.
Yeni bir sunucu sertifikası oluşturma
Şunlar için geçerlidir: vcremote sürüm 1.0.19 ve üzerini kullanan Visual Studio 2022 sürüm 17.5 ve üzeri sürümler.
Güvenlik amacıyla, Visual Studio'yu uzak aracıyla eşleştiren sunucu sertifikaları Mac'inizin IP adresine veya ana bilgisayar adına bağlıdır. Bu değerler değişirse, yeni bir sunucu sertifikası oluşturmanız ve ardından Visual Studio'yu yeni değerlerle yeniden yapılandırmanız gerekir.
Yeni bir sunucu sertifikası oluşturmak için
Aracıyı
vcremote
durdurun.Terminal uygulamasına şu komutu girin:
vcremote resetServerCert
Onay istendiğinde girin
Y
.Visual Studio'yu Mac ile eşleştirmek için, yeni oluşturulan
server-cert.pem
dosyayı Mac'ten aktarın ve Visual Studio'ya yükleyin ve Visual Studio'da uzak aracıyı yapılandırma bölümündeki adımları yineleyin.
Mac'te vcremote'yi yapılandırma
Uzak aracıyı çeşitli komut satırı seçeneklerini kullanarak yapılandırabilirsiniz. Örneğin, derleme isteklerini dinlemek için bağlantı noktasını belirtebilir ve dosya sisteminde tutulacak en fazla derleme sayısını belirtebilirsiniz. Varsayılan olarak sınır 10 derlemedir. Uzak aracı, kapatmada maksimum değeri aşan derlemeleri kaldırır.
Uzak aracıyı yapılandırmak için
Uzak aracı komutlarının tam listesini görmek için Terminal uygulamasında şunu girin:
vcremote --help
Güvenli modu devre dışı bırakmak ve basit HTTP tabanlı bağlantıları etkinleştirmek için şunu girin:
vcremote --secure false
Bu seçeneği kullandığınızda Güvenli onay kutusunu temizleyin.
Uzak aracı dosyaları için bir konum belirtmek için şunu girin:
vcremote --serverDir directory_path
günlük dosyalarını, derlemeleri ve sunucu sertifikalarını yerleştirmek için yerine
directory_path
Mac bilgisayarınızdaki konumu yazın. Varsayılan olarak, bu konum şeklindedir/Users/<username>/vcremote
. Derlemeler bu konumdaki derleme numarasına göre düzenlenir.adlı
server.log
dosyayı yakalamakstdout
vestderr
dosyaya almak üzere bir arka plan işlemi kullanmak için şunu girin:vcremote > server.log 2>&1 &
Dosya derleme
server.log
sorunlarını gidermeye yardımcı olabilir.Aracıyı komut satırı parametreleri yerine bir yapılandırma dosyası kullanarak çalıştırmak için şunu girin:
vcremote --config config_file_path
değerini JSON biçiminde bir yapılandırma dosyasının yoluyla değiştirin
config_file_path
. Başlangıç seçenekleri ve değerleri tire içermemelidir.
Uzak aracı sorunlarını giderme
iOS cihazında hata ayıklama
Bir iOS cihazında hata ayıklama işe yaramazsa, bir iOS cihazıyla iletişim kurmak için kullanılan araçla ideviceinstaller
ilgili sorunlar olabilir. Bu araç genellikle yüklemesi vcremote
sırasında Homebrew'dan yüklenir. Geçici çözüm olarak sonraki adımları izleyin:
Aşağıdaki komutları sırayla çalıştırarak Terminal uygulamasını açın ve güncelleştirin ideviceinstaller
ve bağımlılıklarını güncelleştirin:
Homebrew'un güncelleştirildiğinden emin olun
brew update
kaldırma
libimobiledevice
veusbmuxd
brew uninstall --ignore-dependencies libimobiledevice
brew uninstall --ignore-dependencies usbmuxd
ve uygulamasının en son sürümünü
libimobiledevice
yükleyinusbmuxd
brew install --HEAD usbmuxd
brew unlink usbmuxd
brew link usbmuxd
brew install --HEAD libimobiledevice
Kaldırma ve yeniden yükleme
ideviceinstaller
brew uninstall ideviceinstaller
brew install ideviceinstaller
ideviceinstaller
Cihazda yüklü uygulamaları listelemeye çalışarak cihazla iletişim kurabildiğini doğrulayın:
ideviceinstaller -l
klasörüne /var/db/lockdown
erişemediğini belirten bir hata bildirirseideviceinstaller
, şu komutu kullanarak klasördeki ayrıcalığı değiştirin:
sudo chmod 777 /var/db/lockdown
Ardından cihazla iletişim kurabildiğini yeniden ideviceinstaller
doğrulayın.