Menginstal dan mengonfigurasi alat untuk membangun menggunakan iOS
Anda dapat menggunakan Visual Studio dengan pengembangan Seluler lintas platform dengan alat C++ untuk mengedit, men-debug, dan menyebarkan kode iOS ke Simulator iOS atau ke perangkat iOS. Tetapi, karena pembatasan lisensi, kode harus dibangun dan dijalankan dari jarak jauh di Mac. Untuk membangun dan menjalankan aplikasi iOS menggunakan Visual Studio, Anda perlu menyiapkan dan mengonfigurasi agen jarak jauh, vcremote, di Mac Anda. Agen jarak jauh vcremote menangani permintaan build dari Visual Studio dan menjalankan aplikasi di perangkat iOS yang terhubung ke Mac, atau di Simulator iOS di Mac.
Catatan
Untuk informasi tentang menggunakan layanan Mac yang dihosting cloud, bukan Mac, lihat Mengonfigurasi Visual Studio untuk menyambungkan ke Mac yang dihosting cloud Anda. Instruksinya adalah membangun menggunakan Alat Visual Studio untuk Apache Cordova. Untuk menggunakan instruksi untuk membangun menggunakan C++, ganti vcremote
untuk remotebuild
.
Setelah Anda menginstal alat untuk membangun menggunakan iOS, lihat artikel ini lagi. Ini menjelaskan cara untuk mengonfigurasi dan memperbarui vcremote dengan cepat untuk pengembangan iOS di Visual Studio dan di Mac Anda.
Prasyarat
Untuk menginstal dan menggunakan agen jarak jauh vcremote untuk mengembangkan kode untuk iOS, Anda harus terlebih dahulu memiliki prasyarat ini:
Komputer Mac yang menjalankan macOS Mojave versi 10.14 atau yang lebih baru
Akun Program Pengembang Apple aktif
Anda bisa mendapatkan akun gratis yang memungkinkan aplikasi sideloading ke perangkat iOS hanya untuk pengujian tetapi tidak untuk distribusi.
Xcode versi 10.2.1 atau yang lebih baru
Xcode dapat diunduh dari App Store.
Alat baris perintah Xcode
Untuk menginstal alat baris perintah Xcode, buka app Terminal di Mac Anda dan masukkan perintah berikut:
xcode-select --install
Akun ID Apple yang dikonfigurasi di Xcode sebagai identitas penandatanganan untuk menandatangani app
Untuk melihat atau mengatur identitas penandatanganan Anda di Xcode, buka menu Xcode dan pilih Preferensi. Pilih Akun dan pilih ID Apple Anda, lalu pilih tombol Lihat Detail . Lihat Menambahkan akun ID Apple Anda untuk petunjuk terperinci.
Untuk informasi terperinci tentang persyaratan penandatanganan, lihat Apa itu penandatanganan aplikasi.
Jika Anda menggunakan perangkat iOS untuk pengembangan, Profil provisi yang dikonfigurasi di Xcode untuk perangkat Anda
Xcode menyediakan penandatanganan otomatis, di mana ia membuat sertifikat penandatanganan untuk Anda sesuai kebutuhan. Untuk informasi terperinci tentang penandatanganan otomatis Xcode, lihat penandatanganan otomatis.
Jika ingin melakukan penandatanganan manual, Anda perlu membuat Profil provisi untuk aplikasi Anda. Untuk informasi terperinci tentang membuat Profil provisi, lihat Membuat profil provisi pengembangan.
Node.js versi 18.12.1 dan npm versi 8.19.2
Instal versi 18.12.1 Node.js di Mac Anda. Jika Anda menginstal paket Node.js, paket tersebut harus dilengkapi dengan npm versi 8.19.2. Versi lain dari Node.js dan npm mungkin tidak mendukung beberapa modul yang digunakan dalam vcremote, yang dapat menyebabkan penginstalan vcremote gagal. Kami sarankan Anda menginstal Node.js dengan menggunakan manajer paket seperti Node Version Manager. Hindari menggunakan perintah
sudo
untuk menginstal Node.js, karena beberapa modul dapat gagal diinstal saat menggunakan sudo.
Menginstal vcremote untuk iOS
Saat Anda menginstal pengembangan Seluler dengan beban kerja C++, Visual Studio dapat berkomunikasi dengan agen jarak jauh vcremote yang berjalan di Mac Anda untuk mentransfer file, membangun dan menjalankan aplikasi iOS Anda, dan mengirim perintah debugging.
Sebelum menginstal vcremote, pastikan Anda telah memenuhi Prasyarat dan menyelesaikan langkah-langkah penginstalan dalam Menginstal pengembangan seluler lintas platform dengan C++.
Untuk mengunduh dan menginstal vcremote
Dari app Terminal di Mac Anda, verifikasi bahwa versi Node.js yang saat ini digunakan adalah versi yang diperlukan 18.12.1. Untuk memverifikasi versi, jalankan perintah :
node -v
Jika ini bukan versi yang tepat, Anda mungkin perlu mengikuti instruksi penginstalan Node.js dalam prasyarat. Kemudian, mulai ulang Node.js.
Setelah memverifikasi Node.js yang diperlukan sedang digunakan, jalankan perintah ini untuk menginstal vcremote di bawah versi Node.js tersebut:
npm install -g --unsafe-perm vcremote
Sakelar penginstalan global (-g) disarankan, tetapi tidak diperlukan. Jika Anda tidak menggunakan sakelar penginstalan global, vcremote akan diinstal di bawah jalur aktif saat ini di aplikasi Terminal.
Selama penginstalan,
vcremote
diinstal dan mode pengembang diaktifkan di Mac Anda. Homebrew dan dua paket npm,vcremote-lib
danvcremote-utils
, juga diinstal. Ketika penginstalan selesai, aman untuk mengabaikan peringatan apa pun tentang dependensi opsional yang dilewati.Catatan
Untuk menginstal Homebrew, Anda harus memiliki akses sudo (administrator). Jika Anda perlu menginstal vcremote tanpa sudo, Anda dapat menginstal Homebrew secara manual di
usr/local
lokasi dan menambahkan foldernyabin
ke jalur Anda. Untuk informasi selengkapnya, lihat dokumentasi Homebrew. Untuk mengaktifkan mode pengembang secara manual, masukkan perintah ini di aplikasi Terminal:DevToolsSecurity -enable
Jika Memperbarui ke versi baru Visual Studio, Anda juga harus memperbarui ke versi vcremote saat ini. Untuk memperbarui vcremote, ulangi langkah-langkah untuk mengunduh dan menginstal agen jarak jauh.
Mulai vcremote
Agen jarak jauh vcremote harus berjalan agar Visual Studio dapat membangun dan menjalankan kode iOS Anda. Visual Studio harus dipasangkan dengan vcremote sebelum dapat berkomunikasi. Secara default, vcremote berjalan dalam mode koneksi aman, yang memerlukan transfer sertifikat klien dan server antara komputer Visual Studio dan Mac.
Catatan
Vcremote versi 1.0.19 atau yang lebih baru memerlukan setidaknya Visual Studio 2022 versi 17.5.0 Pratinjau 1 atau yang lebih baru. Jika Anda menggunakan Visual Studio 2022 versi 17.4 atau versi yang lebih lama, instal vcremote versi 1.0.17.
Untuk memulai vcremote
Dari app Terminal di Mac Anda, masukkan:
vcremote
Perintah ini memulai agen jarak jauh dengan direktori
~/vcremote
build default . Untuk opsi konfigurasi lainnya, lihat Mengonfigurasi vcremote di Mac.
Pertama kali Anda memulai vcremote, dan setiap kali Anda membuat sertifikat server baru, Anda diberikan informasi yang diperlukan untuk mengonfigurasi koneksi di Visual Studio. Informasi ini mencakup nama host dan port. Jika Anda ingin mengonfigurasi agen jarak jauh di Visual Studio menggunakan nama host, ping Mac dari Windows menggunakan nama host untuk memverifikasi bahwa itu dapat dijangkau. Jika tidak, Anda mungkin perlu menggunakan alamat IP sebagai gantinya.
Anda dapat menggunakan agen jarak jauh dalam mode tidak aman. Dalam mode tidak aman, agen jarak jauh dapat dipasangkan ke Visual Studio menggunakan koneksi HTTP sederhana yang tidak mengenkripsi data. Gunakan mode tidak aman dengan risiko Anda sendiri. Sebaiknya gunakan mode aman untuk menyambungkan:
Visual Studio 2022 versi 17.5 dan yang lebih baru dengan vcremote 1.0.19 dan yang lebih baru:
Di vcremote 1.0.19 dan yang lebih baru, vcremote melaporkan jalur ke server-cert.pem
file sertifikat, yang harus diunggah ke Visual Studio.
Visual Studio 2022 versi 17.4 dan versi yang lebih lama dengan vcremote 1.0.17 dan yang lebih lama:
Versi 1.0.17 dan versi vcremote yang lebih lama menghasilkan PIN untuk komunikasi yang aman dengan versi Visual Studio melalui Visual Studio 2022 versi 17.4.
PIN yang dihasilkan adalah untuk satu kali penggunaan, dan hanya berlaku untuk waktu yang terbatas. Jika Anda tidak memasangkan Visual Studio dengan agen jarak jauh sebelum waktu kedaluwarsa, Anda harus membuat PIN baru. Untuk informasi selengkapnya, lihat Membuat PIN keamanan baru.
Untuk menonaktifkan mode koneksi aman
Untuk menonaktifkan mode koneksi aman di vcremote, masukkan perintah ini di app Terminal di Mac Anda:
vcremote --secure false
Untuk mengaktifkan mode koneksi aman
Untuk mengaktifkan mode koneksi aman, masukkan perintah ini:
vcremote --secure true
Setelah memulai agen jarak jauh, Anda dapat menggunakannya dari Visual Studio hingga Anda menghentikannya.
Untuk menghentikan agen jarak jauh
- Di jendela Terminal vcremote berjalan, masukkan Kontrol+C.
Mengonfigurasi vcremote di Visual Studio
Untuk menyambungkan ke agen jarak jauh vcremote dari Visual Studio, Anda harus menentukan konfigurasi jarak jauh di opsi Visual Studio. Visual Studio menggunakan informasi yang sama untuk terhubung ke agen jarak jauh di Mac Anda setiap kali Anda menggunakannya. Anda tidak perlu memasangkan Visual Studio dengan agen jarak jauh lagi kecuali Anda membuat sertifikat keamanan baru di Mac Anda, atau nama host atau alamat IP-nya berubah.
Untuk mengonfigurasi vcremote dari Visual Studio 2022 versi 17.5 dan yang lebih baru
Jika agen belum berjalan di Mac Anda, ikuti langkah-langkah di Memulai agen jarak jauh. Mac Anda harus menjalankan vcremote agar Visual Studio berhasil memasangkan, menyambungkan, dan membangun proyek Anda.
Di Mac Anda, dapatkan nama host atau alamat IP Mac Anda.
Anda bisa mendapatkan alamat IP dengan menggunakan perintah ifconfig di jendela Terminal. Gunakan alamat yang
inet
tercantum di bawah antarmuka jaringan aktif.Pada bilah menu Visual Studio, pilih Opsi Alat>.
Dalam kotak dialog Opsi , perluas Lintas Platform>C++>iOS.
Di bidang Nama Host dan Port, masukkan nilai yang ditentukan oleh agen jarak jauh saat Anda memulainya. Nama host dapat menjadi nama DNS atau alamat IP Mac Anda. Port default adalah 3030.
Catatan
Jika Anda tidak dapat melakukan ping Mac menggunakan nama host, Anda mungkin perlu menggunakan alamat IP.
Jika Anda menggunakan agen jarak jauh dalam mode koneksi aman default, centang kotak Centang aman , dan transfer
server-cert.pem
file dari Mac ke Visual Studio untuk diunggah. Selanjutnya, pilih tombol Hasilkan untuk menghasilkan file baruclient-cert.pem
, yang akan muncul di desktop. Kemudian, transfer sertifikat klien ke Mac di bawah/vcremote/certs/Authorized-Clients
. (Anda dapat mentransfer beberapa file sertifikat klien ke direktori ini, sehingga beberapa komputer Visual Studio resmi dapat mengirim permintaan ke Mac ini.)Catatan
Jika Anda menggunakan drive USB untuk mentransfer sertifikat, hapus sertifikat dari drive USB setelah transfer selesai.
Pilih Pasangan untuk mengaktifkan pemasangan.
Pemasangan berlanjut hingga Anda mengubah nama host, port, atau menghasilkan server baru atau sertifikat klien. Jika Anda mengubah nama host atau port dalam kotak dialog Opsi , Anda dapat memilih tombol Kembalikan untuk membatalkan perubahan dan kembali ke pemasangan sebelumnya.
Jika pemasangan tidak berhasil, verifikasi bahwa agen jarak jauh berjalan dengan mengikuti langkah-langkah di Mulai agen jarak jauh. Ikuti langkah-langkah untuk Membuat sertifikat server baru dan Membuat sertifikat klien baru. Jika Anda menggunakan nama host Mac Anda, coba gunakan alamat IP di bidang Nama Host sebagai gantinya.
Perbarui nama folder di bidang Akar Jarak Jauh untuk menentukan folder yang digunakan oleh agen jarak jauh di direktori rumah (
~
) Anda di Mac. Secara default, agen jarak jauh menggunakan/Users/<username>/vcremote
sebagai akar jarak jauh.Pilih OK untuk menyimpan pengaturan koneksi pemasangan jarak jauh.
Untuk mengonfigurasi vcremote dari versi sebelum Visual Studio 2022 versi 17.5
Jika agen belum berjalan di Mac Anda, ikuti langkah-langkah di Memulai agen jarak jauh. Mac Anda harus menjalankan vcremote agar Visual Studio berhasil memasangkan, menyambungkan, dan membangun proyek Anda.
Di Mac Anda, dapatkan nama host atau alamat IP Mac Anda.
Anda bisa mendapatkan alamat IP dengan menggunakan perintah ifconfig di jendela Terminal. Gunakan alamat yang
inet
tercantum di bawah antarmuka jaringan aktif.Pada bilah menu Visual Studio, pilih Opsi Alat>.
Dalam kotak dialog Opsi , perluas Lintas Platform>C++>iOS.
Di bidang Nama Host dan Port, masukkan nilai yang ditentukan oleh agen jarak jauh saat Anda memulainya. Nama host dapat menjadi nama DNS atau alamat IP Mac Anda. Port default adalah 3030.
Catatan
Jika Anda tidak dapat melakukan ping mac menggunakan nama host, Anda mungkin perlu menggunakan alamat IP.
Jika Anda menggunakan agen jarak jauh dalam mode koneksi aman default, centang kotak Centang aman , lalu masukkan nilai PIN yang ditentukan oleh agen jarak jauh di bidang Sematkan . Jika Anda menggunakan agen jarak jauh dalam mode koneksi yang tidak aman, kosongkan kotak centang Aman dan biarkan bidang Sematkan kosong.
Pilih Pasangan untuk mengaktifkan pemasangan.
Pemasangan berlanjut hingga Anda mengubah nama host atau port. Jika Anda mengubah nama host atau port dalam kotak dialog Opsi , untuk membatalkan perubahan, pilih tombol Kembalikan untuk kembali ke pemasangan sebelumnya.
Jika pemasangan tidak berhasil, verifikasi bahwa agen jarak jauh berjalan dengan mengikuti langkah-langkah di Mulai agen jarak jauh. Jika terlalu banyak waktu yang berlalu sejak PIN agen jarak jauh dihasilkan, ikuti langkah-langkah dalam Menghasilkan PIN keamanan baru. Kemudian coba lagi. Jika Anda menggunakan nama host Mac Anda, coba gunakan alamat IP di bidang Nama Host sebagai gantinya.
Perbarui nama folder di bidang Akar Jarak Jauh untuk menentukan folder yang digunakan oleh agen jarak jauh di direktori rumah (
~
) Anda di Mac. Secara default, agen jarak jauh menggunakan/Users/<username>/vcremote
sebagai akar jarak jauh.Pilih OK untuk menyimpan pengaturan koneksi pemasangan jarak jauh.
Membuat PIN keamanan baru
Berlaku untuk: Visual Studio 2022 versi 17.4 dan versi yang lebih lama, menggunakan vcremote versi 1.0.17 dan yang lebih lama.
Saat Anda memulai agen jarak jauh untuk pertama kalinya, PIN yang dihasilkan berlaku untuk waktu yang terbatas—secara default, 10 menit. Jika Anda tidak memasangkan Visual Studio ke agen jarak jauh sebelum waktu kedaluwarsa, Anda harus membuat PIN baru.
Untuk menghasilkan PIN baru
Hentikan agen, atau buka jendela app Terminal kedua di Mac Anda dan gunakan untuk memasukkan perintah.
Masukkan perintah ini di aplikasi Terminal:
vcremote generateClientCert
Agen jarak jauh menghasilkan PIN sementara baru. Untuk memasangkan Visual Studio dengan menggunakan PIN baru, ulangi langkah-langkah di Mengonfigurasi agen jarak jauh di Visual Studio.
Membuat sertifikat klien baru
Berlaku untuk: Visual Studio 2022 versi 17.5 dan versi yang lebih baru, menggunakan vcremote versi 1.0.19 dan yang lebih baru.
Saat memasangkan di Visual Studio, Anda akan membuat file baru client-cert.pem
. Transfer file sertifikat ke mesin build Mac di bawah /vcremote/certs/Authorized-Clients
. Sertifikat ini memungkinkan Mac untuk mengotorisasi permintaan yang berasal dari komputer Visual Studio Anda.
Membuat sertifikat server baru
Berlaku untuk: Visual Studio 2022 versi 17.5 dan versi yang lebih baru, menggunakan vcremote versi 1.0.19 dan yang lebih baru.
Untuk tujuan keamanan, sertifikat server yang memasangkan Visual Studio dengan agen jarak jauh terkait dengan alamat IP atau nama host Mac Anda. Jika nilai ini berubah, Anda harus membuat sertifikat server baru, lalu mengonfigurasi ulang Visual Studio dengan nilai baru.
Untuk menghasilkan sertifikat server baru
Hentikan agennya
vcremote
.Masukkan perintah ini di aplikasi Terminal:
vcremote resetServerCert
Ketika diminta untuk konfirmasi, masukkan
Y
.Untuk memasangkan Visual Studio dengan Mac, transfer file yang baru dibuat
server-cert.pem
dari Mac dan unggah ke Visual Studio, ulangi langkah-langkah di Mengonfigurasi agen jarak jauh di Visual Studio.
Mengonfigurasi vcremote di Mac
Anda dapat mengonfigurasi agen jarak jauh menggunakan berbagai opsi baris perintah. Misalnya, Anda dapat menentukan port untuk mendengarkan permintaan build dan menentukan jumlah maksimum build yang akan dipertahankan pada sistem file. Secara default, batasnya adalah 10 build. Agen jarak jauh akan menghapus build yang melebihi maksimum saat dimatikan.
Untuk mengonfigurasi agen jarak jauh
Untuk melihat daftar lengkap perintah agen jarak jauh, di aplikasi Terminal, masukkan:
vcremote --help
Untuk menonaktifkan mode aman dan mengaktifkan koneksi berbasis HTTP sederhana, masukkan:
vcremote --secure false
Saat Anda menggunakan opsi ini, kosongkan kotak centang Aman .
Untuk menentukan lokasi untuk file agen jarak jauh, masukkan:
vcremote --serverDir directory_path
Ganti
directory_path
dengan lokasi di Mac Anda untuk menempatkan file log, build, dan sertifikat server. Secara default, lokasi ini adalah/Users/<username>/vcremote
. Build diatur berdasarkan nomor build di lokasi ini.Untuk menggunakan proses latar belakang untuk mengambil
stdout
danstderr
ke file bernamaserver.log
, masukkan:vcremote > server.log 2>&1 &
File
server.log
dapat membantu memecahkan masalah build.Untuk menjalankan agen dengan menggunakan file konfigurasi alih-alih parameter baris perintah, masukkan:
vcremote --config config_file_path
Ganti
config_file_path
dengan jalur ke file konfigurasi dalam format JSON. Opsi startup dan nilainya tidak boleh menyertakan tanda hubung.
Memecahkan masalah agen jarak jauh
Penelusuran kesalahan pada perangkat iOS
Jika penelusuran kesalahan pada perangkat iOS tidak berfungsi, mungkin ada masalah dengan ideviceinstaller
alat, yang digunakan untuk berkomunikasi dengan perangkat iOS. Alat ini biasanya diinstal dari Homebrew selama penginstalan vcremote
. Ikuti langkah-langkah berikutnya sebagai solusinya:
Buka aplikasi Terminal dan perbarui ideviceinstaller
dan dependensinya dengan menjalankan perintah berikut secara berurutan:
Pastikan Homebrew diperbarui
brew update
Hapus instalan
libimobiledevice
danusbmuxd
brew uninstall --ignore-dependencies libimobiledevice
brew uninstall --ignore-dependencies usbmuxd
Menginstal versi terbaru dan
libimobiledevice
usbmuxd
brew install --HEAD usbmuxd
brew unlink usbmuxd
brew link usbmuxd
brew install --HEAD libimobiledevice
Hapus instalan dan instal ulang
ideviceinstaller
brew uninstall ideviceinstaller
brew install ideviceinstaller
Verifikasi bahwa ideviceinstaller
dapat berkomunikasi dengan perangkat dengan mencoba mencantumkan aplikasi yang diinstal pada perangkat:
ideviceinstaller -l
Jika ideviceinstaller
melaporkan kesalahan bahwa ia tidak dapat mengakses folder /var/db/lockdown
, ubah hak istimewa pada folder menggunakan perintah ini:
sudo chmod 777 /var/db/lockdown
Kemudian verifikasi lagi jika ideviceinstaller
dapat berkomunikasi dengan perangkat.