Udostępnij za pośrednictwem


Instalowanie i konfigurowanie narzędzi do kompilacji przy użyciu systemu iOS

Program Visual Studio można używać z wieloplatformowym programowaniem mobilnym za pomocą narzędzi języka C++ , aby edytować, debugować i wdrażać kod systemu iOS w symulatorze systemu iOS lub na urządzeniu z systemem iOS. Jednak ze względu na ograniczenia licencjonowania kod musi być kompilowany i uruchamiany zdalnie na komputerze Mac. Aby tworzyć i uruchamiać aplikacje dla systemu iOS przy użyciu programu Visual Studio, należy skonfigurować i skonfigurować agenta zdalnego vcremote na komputerze Mac. Agent zdalny vcremote obsługuje żądania kompilacji z programu Visual Studio i uruchamia aplikację na urządzeniu z systemem iOS połączonym z komputerem Mac lub w symulatorze systemu iOS na komputerze Mac.

Uwaga

Aby uzyskać informacje na temat korzystania z usług mac hostowanych w chmurze zamiast komputerów Mac, zobacz Konfigurowanie programu Visual Studio w celu nawiązania połączenia z hostowanymi w chmurze komputerami Mac. Instrukcje są przeznaczone do kompilowania przy użyciu narzędzi Visual Studio Tools for Apache Cordova. Aby użyć instrukcji do skompilowania przy użyciu języka C++, zastąp vcremote element .remotebuild

Po zainstalowaniu narzędzi do kompilowania przy użyciu systemu iOS ponownie zapoznaj się z tym artykułem. W tym artykule opisano sposoby szybkiego konfigurowania i aktualizowania narzędzia vcremote na potrzeby tworzenia aplikacji dla systemu iOS w programie Visual Studio i na komputerze Mac.

Wymagania wstępne

Aby zainstalować i użyć agenta zdalnego vcremote do tworzenia kodu dla systemu iOS, musisz najpierw mieć następujące wymagania wstępne:

  • Komputer Mac z systemem macOS Mojave w wersji 10.14 lub nowszej

  • Identyfikator Apple ID

  • Aktywne konto programu Apple Developer Program

    Możesz uzyskać bezpłatne konto, które umożliwia ładowanie bezpośrednie aplikacji do urządzenia z systemem iOS na potrzeby testowania tylko, ale nie do dystrybucji.

  • Program Xcode w wersji 10.2.1 lub nowszej

    Kod Xcode można pobrać ze sklepu App Store.

  • Narzędzia wiersza polecenia Xcode

    Aby zainstalować narzędzia wiersza polecenia Xcode, otwórz aplikację Terminal na komputerze Mac i wprowadź następujące polecenie:

    xcode-select --install

  • Konto identyfikatora Apple ID skonfigurowane w programie Xcode jako tożsamość podpisywania do podpisywania aplikacji

    Aby wyświetlić lub ustawić tożsamość podpisywania w programie Xcode, otwórz menu Xcode i wybierz pozycję Preferencje. Wybierz pozycję Konta i wybierz swój identyfikator Apple ID, a następnie wybierz przycisk Wyświetl szczegóły . Aby uzyskać szczegółowe instrukcje, zobacz Dodawanie konta apple ID.

    Aby uzyskać szczegółowe informacje na temat wymagań dotyczących podpisywania, zobacz Co to jest podpisywanie aplikacji.

  • Jeśli używasz urządzenia z systemem iOS do programowania, profil aprowizacji skonfigurowany w środowisku Xcode dla urządzenia

    Program Xcode zapewnia automatyczne podpisywanie, w którym tworzy certyfikaty podpisywania zgodnie z potrzebami. Aby uzyskać szczegółowe informacje na temat automatycznego podpisywania kodu Xcode, zobacz automatyczne podpisywanie.

    Jeśli chcesz przeprowadzić ręczne podpisywanie, musisz utworzyć profil aprowizacji dla aplikacji. Aby uzyskać szczegółowe informacje na temat tworzenia profilów aprowizacji, zobacz Tworzenie profilu aprowizacji programowania.

  • Node.js w wersji 18.12.1 i npm w wersji 8.19.2

    Zainstaluj wersję 18.12.1 Node.js na komputerze Mac. Jeśli zainstalujesz pakiet Node.js, powinien on pochodzić z programem npm w wersji 8.19.2. Inne wersje Node.js i npm mogą nie obsługiwać niektórych modułów używanych w vcremote, co może spowodować niepowodzenie instalacji vcremote. Zalecamy zainstalowanie Node.js przy użyciu menedżera pakietów, takiego jak Node Version Manager. Unikaj używania polecenia sudo , aby zainstalować Node.js, ponieważ niektóre moduły mogą zakończyć się niepowodzeniem podczas korzystania z programu sudo.

Instalowanie narzędzia vcremote dla systemu iOS

Po zainstalowaniu pakietu roboczego Programowanie aplikacji mobilnych za pomocą języka C++ program Visual Studio może komunikować się z agentem zdalnym vcremote uruchomionym na komputerze Mac w celu przesyłania plików, kompilowania i uruchamiania aplikacji systemu iOS oraz wysyłania poleceń debugowania.

Przed zainstalowaniem programu vcremote upewnij się, że zostały spełnione wymagania wstępne i zostały wykonane kroki instalacji opisane w temacie Instalowanie programowania aplikacji mobilnych dla wielu platform za pomocą języka C++.

Aby pobrać i zainstalować narzędzie vcremote

  • Z poziomu aplikacji Terminal na komputerze Mac sprawdź, czy używana wersja Node.js jest wymagana w wersji 18.12.1. Aby sprawdzić wersję, uruchom polecenie:

    node -v

    Jeśli nie jest to właściwa wersja, może być konieczne wykonanie instrukcji instalacji Node.js w wymaganiach wstępnych. Następnie uruchom ponownie Node.js.

  • Po sprawdzeniu, czy jest używana wymagana Node.js, uruchom to polecenie, aby zainstalować program vcremote w tej wersji Node.js:

    npm install -g --unsafe-perm vcremote

    Zalecany jest przełącznik instalacji globalnej (-g), ale nie jest wymagany. Jeśli nie używasz globalnego przełącznika instalacji, narzędzie vcremote zostanie zainstalowane w bieżącej aktywnej ścieżce w aplikacji terminalu.

    Podczas instalacji program jest instalowany, vcremote a tryb dewelopera jest aktywowany na komputerze Mac. Oprogramowanie Homebrew i dwa pakiety vcremote-lib npm i vcremote-utils, są również zainstalowane. Po zakończeniu instalacji można bezpiecznie zignorować wszelkie ostrzeżenia dotyczące pominiętych opcjonalnych zależności.

    Uwaga

    Aby zainstalować oprogramowanie Homebrew, musisz mieć dostęp sudo (administrator). Jeśli musisz zainstalować program vcremote bez programu sudo, możesz zainstalować oprogramowanie Homebrew ręcznie w usr/local lokalizacji i dodać jego bin folder do ścieżki. Aby uzyskać więcej informacji, zobacz dokumentację oprogramowania Homebrew. Aby ręcznie włączyć tryb dewelopera, wprowadź następujące polecenie w aplikacji terminalu: DevToolsSecurity -enable

Jeśli zaktualizujesz program Visual Studio do nowej wersji, musisz również zaktualizować bieżącą wersję programu vcremote. Aby zaktualizować vcremote, powtórz kroki pobierania i instalowania agenta zdalnego.

Uruchom vcremote

Agent zdalny vcremote musi być uruchomiony, aby program Visual Studio skompilować i uruchomić kod systemu iOS. Program Visual Studio musi być sparowany z vcremote, zanim będzie mógł się komunikować. Domyślnie vcremote działa w trybie zabezpieczonego połączenia, co wymaga transferu certyfikatów klienta i serwera między komputerami Visual Studio i Mac.

Uwaga

Wersja 1.0.19 lub nowsza programu vcremote wymaga co najmniej programu Visual Studio 2022 w wersji 17.5.0 (wersja zapoznawcza 1 lub nowsza). Jeśli używasz programu Visual Studio 2022 w wersji 17.4 lub starszej, zainstaluj program vcremote w wersji 1.0.17.

Aby uruchomić vcremote

  • W aplikacji Terminal na komputerze Mac wprowadź:

    vcremote

    To polecenie uruchamia agenta zdalnego z domyślnym katalogiem kompilacji ~/vcremote. Aby uzyskać więcej opcji konfiguracji, zobacz Konfigurowanie vcremote na komputerze Mac.

Przy pierwszym uruchomieniu programu vcremote i za każdym razem, gdy tworzysz nowy certyfikat serwera, należy podać wymagane informacje, aby skonfigurować połączenie w programie Visual Studio. Informacje obejmują nazwę hosta i port. Jeśli zamierzasz skonfigurować agenta zdalnego w programie Visual Studio przy użyciu nazwy hosta, wyślij polecenie ping do komputera Mac z systemu Windows przy użyciu nazwy hosta, aby sprawdzić, czy jest osiągalny. W przeciwnym razie może być konieczne użycie adresu IP.

Agent zdalny można używać w trybie niezabezpieczonym. W trybie niezabezpieczonym agent zdalny można sparować z programem Visual Studio przy użyciu prostego połączenia HTTP, które nie szyfruje danych. Używaj trybu niezabezpieczonego na własne ryzyko. Zalecamy użycie trybu bezpiecznego do nawiązania połączenia:

Program Visual Studio 2022 w wersji 17.5 lub nowszej z programem vcremote 1.0.19 lub nowszym:

W programie vcremote 1.0.19 lub nowszym server-cert.pem program vcremote zgłasza ścieżkę do pliku certyfikatu, który musi zostać przekazany do programu Visual Studio.

Program Visual Studio 2022 w wersji 17.4 lub starszej z programem vcremote 1.0.17 i starszymi wersjami:

Wersja 1.0.17 i starsze wersje vcremote generują numer PIN do bezpiecznej komunikacji z wersjami programu Visual Studio za pośrednictwem programu Visual Studio 2022 w wersji 17.4.

Screenshot of the Mac Terminal window that shows the host name, port, and PIN reported when VC remote is started.

Wygenerowany numer PIN jest używany jednorazowo i jest ważny tylko przez ograniczony czas. Jeśli nie połączysz programu Visual Studio z agentem zdalnym przed upływem czasu, musisz wygenerować nowy numer PIN. Aby uzyskać więcej informacji, zobacz Generowanie nowego numeru PIN zabezpieczeń.

Aby wyłączyć bezpieczny tryb połączenia

  • Aby wyłączyć tryb bezpiecznego połączenia w programie vcremote, wprowadź to polecenie w aplikacji Terminal na komputerze Mac:

    vcremote --secure false

Aby włączyć bezpieczny tryb połączenia

  • Aby włączyć bezpieczny tryb połączenia, wprowadź następujące polecenie:

    vcremote --secure true

Po uruchomieniu agenta zdalnego można go użyć z programu Visual Studio do momentu jego zatrzymania.

Aby zatrzymać agenta zdalnego

  • W oknie terminalu vcremote jest uruchomiony w, wprowadź Control+C.

Konfigurowanie narzędzia vcremote w programie Visual Studio

Aby nawiązać połączenie z agentem zdalnym vcremote z poziomu programu Visual Studio, należy określić konfigurację zdalną w opcjach programu Visual Studio. Program Visual Studio używa tych samych informacji do nawiązywania połączenia z agentem zdalnym na komputerze Mac za każdym razem, gdy używasz go. Nie musisz ponownie parować programu Visual Studio z agentem zdalnym, chyba że wygenerujesz nowy certyfikat zabezpieczeń na komputerze Mac lub jego nazwę hosta lub zmiany adresu IP.

Aby skonfigurować vcremote z programu Visual Studio 2022 w wersji 17.5 lub nowszej

  1. Jeśli agent nie jest jeszcze uruchomiony na komputerze Mac, wykonaj kroki opisane w temacie Uruchamianie agenta zdalnego. Aby pomyślnie sparować, połączyć i skompilować projekt, na komputerze Mac musi być uruchomiony program vcremote dla programu Visual Studio.

  2. Na komputerze Mac pobierz nazwę hosta lub adres IP komputera Mac.

    Adres IP można uzyskać przy użyciu polecenia ifconfig w oknie terminalu. inet Użyj adresu wymienionego w aktywnym interfejsie sieciowym.

  3. Na pasku menu programu Visual Studio wybierz pozycję Narzędzia>Opcje.

  4. W oknie dialogowym Opcje rozwiń węzeł Międzyplatformowy>język C++>iOS.

  5. W polach Nazwa hosta i Port wprowadź wartości określone przez agenta zdalnego podczas jego uruchamiania. Nazwa hosta może być nazwą DNS lub adresem IP komputera Mac. Domyślny port to 3030.

    Uwaga

    Jeśli nie możesz wysłać polecenia ping do komputera Mac przy użyciu nazwy hosta, może być konieczne użycie adresu IP.

  6. Jeśli używasz agenta zdalnego w domyślnym trybie zabezpieczonego połączenia, zaznacz pole wyboru Bezpieczne i przenieś server-cert.pem plik z komputera Mac do programu Visual Studio w celu przekazania. Następnie wybierz przycisk Generuj, aby wygenerować nowy client-cert.pem plik, który powinien pojawić się na pulpicie. Następnie przenieś certyfikat klienta na komputer Mac w obszarze /vcremote/certs/Authorized-Clients. (Możesz przenieść wiele plików certyfikatów klienta do tego katalogu, więc wiele autoryzowanych maszyn programu Visual Studio może wysyłać żądania do tego komputera Mac).

    Uwaga

    Jeśli używasz dysku USB do transferu certyfikatów, usuń certyfikaty z dysku USB po zakończeniu transferu.

  7. Wybierz pozycję Para , aby włączyć parowanie.

    Screenshot of the Tools Options dialog for iOS pairing. The host name, the port, the Secure checkbox, and the Remote Root values are set.

    Parowanie będzie utrzymywane do momentu zmiany nazwy hosta, portu lub wygenerowania nowego serwera lub certyfikatu klienta. Jeśli zmienisz nazwę hosta lub port w oknie dialogowym Opcje , możesz wybrać przycisk Przywróć , aby cofnąć zmianę i przywrócić poprzednie parowanie.

    Jeśli parowanie nie powiedzie się, sprawdź, czy agent zdalny jest uruchomiony, wykonując kroki opisane w temacie Uruchamianie agenta zdalnego. Wykonaj kroki, aby wygenerować nowy certyfikat serwera i wygenerować nowy certyfikat klienta. Jeśli używasz nazwy hosta komputera Mac, spróbuj użyć adresu IP w polu Nazwa hosta.

  8. Zaktualizuj nazwę folderu w polu Zdalny katalog główny , aby określić folder używany przez agenta zdalnego w katalogu głównym (~) na komputerze Mac. Domyślnie agent zdalny używa /Users/<username>/vcremote jako zdalnego katalogu głównego.

  9. Wybierz przycisk OK , aby zapisać ustawienia połączenia parowania zdalnego.

Aby skonfigurować vcremote z wersji przed programem Visual Studio 2022 w wersji 17.5

  1. Jeśli agent nie jest jeszcze uruchomiony na komputerze Mac, wykonaj kroki opisane w temacie Uruchamianie agenta zdalnego. Aby pomyślnie sparować, połączyć i skompilować projekt, na komputerze Mac musi być uruchomiony program vcremote dla programu Visual Studio.

  2. Na komputerze Mac pobierz nazwę hosta lub adres IP komputera Mac.

    Adres IP można uzyskać przy użyciu polecenia ifconfig w oknie terminalu. inet Użyj adresu wymienionego w aktywnym interfejsie sieciowym.

  3. Na pasku menu programu Visual Studio wybierz pozycję Narzędzia>Opcje.

  4. W oknie dialogowym Opcje rozwiń węzeł Międzyplatformowy>język C++>iOS.

  5. W polach Nazwa hosta i Port wprowadź wartości określone przez agenta zdalnego podczas jego uruchamiania. Nazwa hosta może być nazwą DNS lub adresem IP komputera Mac. Domyślny port to 3030.

    Uwaga

    Jeśli nie możesz wysłać polecenia ping do komputera Mac przy użyciu nazwy hosta, może być konieczne użycie adresu IP.

  6. Jeśli używasz agenta zdalnego w domyślnym trybie zabezpieczonego połączenia, zaznacz pole wyboru Bezpieczne , a następnie wprowadź wartość numeru PIN określoną przez agenta zdalnego w polu Przypnij . Jeśli używasz agenta zdalnego w trybie niezabezpieczonego połączenia, wyczyść pole wyboru Bezpieczne i pozostaw pole Przypnij puste.

  7. Wybierz pozycję Para , aby włączyć parowanie.

    Screenshot of the Tools Options dialog for iOS pairing. The host name, the port, the Secure checkbox, the pin, and the Remote Root values are set.

    Parowanie będzie utrzymywane do momentu zmiany nazwy hosta lub portu. Jeśli zmienisz nazwę hosta lub port w oknie dialogowym Opcje , aby cofnąć zmianę, wybierz przycisk Przywróć , aby przywrócić poprzednie parowanie.

    Jeśli parowanie nie powiedzie się, sprawdź, czy agent zdalny jest uruchomiony, wykonując kroki opisane w temacie Uruchamianie agenta zdalnego. Jeśli minęło zbyt dużo czasu od wygenerowania numeru PIN agenta zdalnego, wykonaj kroki opisane w temacie Generowanie nowego numeru PIN zabezpieczeń. Następnie spróbuj ponownie. Jeśli używasz nazwy hosta komputera Mac, spróbuj użyć adresu IP w polu Nazwa hosta.

  8. Zaktualizuj nazwę folderu w polu Zdalny katalog główny , aby określić folder używany przez agenta zdalnego w katalogu głównym (~) na komputerze Mac. Domyślnie agent zdalny używa /Users/<username>/vcremote jako zdalnego katalogu głównego.

  9. Wybierz przycisk OK , aby zapisać ustawienia połączenia parowania zdalnego.

Generowanie nowego numeru PIN zabezpieczeń

Dotyczy: Program Visual Studio 2022 w wersji 17.4 lub starszej, korzystając z programu vcremote w wersji 1.0.17 i starszych.

Po pierwszym uruchomieniu agenta zdalnego wygenerowany numer PIN jest ważny przez ograniczony czas — domyślnie 10 minut. Jeśli program Visual Studio nie zostanie sparowany z agentem zdalnym przed upływem czasu, musisz wygenerować nowy numer PIN.

Aby wygenerować nowy numer PIN

  1. Zatrzymaj agenta lub otwórz drugie okno aplikacji terminalowej na komputerze Mac i użyj go, aby wprowadzić polecenie .

  2. Wprowadź to polecenie w aplikacji terminalu:

    vcremote generateClientCert

    Agent zdalny generuje nowy tymczasowy numer PIN. Aby sparować program Visual Studio przy użyciu nowego numeru PIN, powtórz kroki opisane w temacie Konfigurowanie agenta zdalnego w programie Visual Studio.

Generowanie nowego certyfikatu klienta

Dotyczy: Program Visual Studio 2022 w wersji 17.5 lub nowszej przy użyciu programu vcremote w wersji 1.0.19 lub nowszej.

Podczas parowania w programie Visual Studio wygenerujesz nowy client-cert.pem plik. Przenieś plik certyfikatu na maszynę kompilacji dla komputerów Mac w obszarze /vcremote/certs/Authorized-Clients. Ten certyfikat umożliwia komputerowi Mac autoryzowanie żądań pochodzących z komputera Visual Studio.

Generowanie nowego certyfikatu serwera

Dotyczy: Program Visual Studio 2022 w wersji 17.5 lub nowszej przy użyciu programu vcremote w wersji 1.0.19 lub nowszej.

Ze względów bezpieczeństwa certyfikaty serwera, które łączą program Visual Studio z agentem zdalnym, są powiązane z adresem IP lub nazwą hosta komputera Mac. Jeśli te wartości się zmienią, musisz wygenerować nowy certyfikat serwera, a następnie ponownie skonfigurować program Visual Studio przy użyciu nowych wartości.

Aby wygenerować nowy certyfikat serwera

  1. Zatrzymaj agenta vcremote .

  2. Wprowadź to polecenie w aplikacji terminalu:

    vcremote resetServerCert

  3. Po wyświetleniu monitu o potwierdzenie wprowadź .Y

  4. Aby sparować program Visual Studio z komputerem Mac, przenieś nowo wygenerowany server-cert.pem plik z komputera Mac i przekaż go do programu Visual Studio, powtarzając kroki opisane w temacie Konfigurowanie agenta zdalnego w programie Visual Studio.

Konfigurowanie narzędzia vcremote na komputerze Mac

Agent zdalny można skonfigurować przy użyciu różnych opcji wiersza polecenia. Można na przykład określić port do nasłuchiwania żądań kompilacji i określić maksymalną liczbę kompilacji do utrzymania w systemie plików. Domyślnie limit to 10 kompilacji. Agent zdalny usunie kompilacje, które przekraczają maksymalną wartość zamknięcia.

Aby skonfigurować agenta zdalnego

  • Aby wyświetlić pełną listę poleceń agenta zdalnego, w aplikacji Terminal wprowadź:

    vcremote --help

  • Aby wyłączyć tryb bezpieczny i włączyć proste połączenia oparte na protokole HTTP, wprowadź:

    vcremote --secure false

    Jeśli używasz tej opcji, wyczyść pole wyboru Zabezpieczanie.

  • Aby określić lokalizację plików agenta zdalnego, wprowadź:

    vcremote --serverDir directory_path

    Zastąp directory_path element lokalizacją na komputerze Mac, aby umieścić pliki dziennika, kompilacje i certyfikaty serwera. Domyślnie ta lokalizacja to /Users/<username>/vcremote. Kompilacje są zorganizowane według numeru kompilacji w tej lokalizacji.

  • Aby użyć procesu w tle do przechwytywania stdout i stderr do pliku o nazwie server.log, wprowadź:

    vcremote > server.log 2>&1 &

    Plik server.log może pomóc w rozwiązywaniu problemów z kompilacją.

  • Aby uruchomić agenta przy użyciu pliku konfiguracji zamiast parametrów wiersza polecenia, wprowadź:

    vcremote --config config_file_path

    Zastąp config_file_path ciąg ścieżką do pliku konfiguracji w formacie JSON. Opcje uruchamiania i ich wartości nie mogą zawierać kreski.

Rozwiązywanie problemów z agentem zdalnym

Debugowanie na urządzeniu z systemem iOS

Jeśli debugowanie na urządzeniu z systemem iOS nie działa, mogą wystąpić problemy z ideviceinstaller narzędziem używanym do komunikowania się z urządzeniem z systemem iOS. To narzędzie jest zwykle instalowane z oprogramowania Homebrew podczas instalacji vcremoteprogramu . Wykonaj następne kroki jako obejście:

Otwórz aplikację terminalu i zaktualizuj ideviceinstaller jej zależności, uruchamiając następujące polecenia w następującej kolejności:

  1. Upewnij się, że oprogramowanie Homebrew zostało zaktualizowane

    brew update

  2. Odinstalowywanie libimobiledevice i usbmuxd

    brew uninstall --ignore-dependencies libimobiledevice

    brew uninstall --ignore-dependencies usbmuxd

  3. Instalowanie najnowszej wersji programu libimobiledevice i usbmuxd

    brew install --HEAD usbmuxd

    brew unlink usbmuxd

    brew link usbmuxd

    brew install --HEAD libimobiledevice

  4. Odinstalowywanie i ponowne instalowanie ideviceinstaller

    brew uninstall ideviceinstaller

    brew install ideviceinstaller

Sprawdź, czy ideviceinstaller można komunikować się z urządzeniem, próbując wyświetlić listę aplikacji zainstalowanych na urządzeniu:

ideviceinstaller -l

Jeśli ideviceinstaller zgłasza błąd, że nie może uzyskać dostępu do folderu , zmień uprawnienia w folderze /var/db/lockdownprzy użyciu tego polecenia:

sudo chmod 777 /var/db/lockdown

Następnie sprawdź ponownie, czy ideviceinstaller można nawiązać komunikację z urządzeniem.

Zobacz też