Ponowne uruchamianie platformy Xamarin na gorąco
Ponowne uruchamianie na gorąco platformy Xamarin umożliwia szybkie testowanie zmian w aplikacji podczas programowania, w tym edycji kodu obejmującego wiele plików, zasobów i odwołań. Wypycha nowe zmiany do istniejącego pakietu aplikacji w celu debugowania, co skutkuje znacznie szybszym cyklem kompilacji i wdrażania.
Ważne
Ponowne uruchamianie na gorąco platformy Xamarin jest obecnie dostępne w programie Visual Studio 2019 w wersji 16.5 stabilnej i obsługuje aplikacje systemu iOS przy użyciu programu Xamarin.Forms. Obsługa Visual Studio dla komputerów Mac i aplikacji nienależącychXamarin.Forms do planu.
Wymagania
- Visual Studio 2019 w wersji 16.5 lub nowszej
- iTunes (wersje sklepu Microsoft Store lub 64-bitowe)
- Konto dla deweloperów firmy Apple i płatna rejestracja w programie Apple Developer Program
Konfiguracja początkowa
Uwaga
Ponowne uruchamianie na gorąco platformy Xamarin jest domyślnie wyłączone w programie Visual Studio 16.8 i poprzednich wersjach. Można ją włączyć w obszarze Narzędzia > Opcje > Środowiska > w wersji zapoznawczej Funkcje > włącz ponowne uruchamianie platformy Xamarin na gorąco. Począwszy od programu Visual Studio 16.9, ponowne uruchamianie platformy Xamarin na gorąco jest domyślnie włączone i można je wyłączyć z menu Opcje > narzędzi > Xamarin > iOS Ustawienia > Włącz ponowne uruchamianie na gorąco.
Upewnij się, że projekt systemu iOS jest ustawiony jako projekt startowy, a konfiguracja kompilacji jest ustawiona na debugowanie|i Telefon.
- Jeśli jest to istniejący projekt, przejdź do obszaru Kompiluj > program Configuration Manager... i upewnij się, że opcja Wdróż jest włączona dla projektu systemu iOS.
Wybierz i kliknij pozycję Urządzenie lokalne na pasku narzędzi, aby uruchomić kreatora instalacji:
Jeśli program iTunes nie jest zainstalowany, kliknij pozycję Pobierz program iTunes , aby pobrać instalatora. Po zakończeniu instalacji programu iTunes kliknij przycisk Dalej .
Podłącz urządzenie z systemem iOS do komputera. Jeśli urządzenie zostało już podłączone, odłącz je, a następnie ponownie nawiąż połączenie. Nazwa urządzenia zostanie wyświetlona w kreatorze po jego wykryciu. Kliknij przycisk Dalej.
Wprowadź poświadczenia konta dewelopera firmy Apple, a następnie kliknij przycisk Dalej.
Wybierz zespół deweloperów przy użyciu menu rozwijanego, aby włączyć automatyczną aprowizację w projekcie. Kliknij przycisk Zakończ.
Uwaga
Korzystanie z automatycznej aprowizacji jest zalecane, aby można było łatwo skonfigurować dodatkowe urządzenia z systemem iOS do wdrożenia. Można go jednak wyłączyć i nadal używać ręcznej aprowizacji, jeśli istnieją prawidłowe profile aprowizacji.
Korzystanie z ponownego uruchamiania platformy Xamarin na gorąco
Po początkowej konfiguracji połączone urządzenie zostanie wyświetlone w menu rozwijanym miejsca docelowego debugowania. Aby debugować aplikację, wybierz urządzenie z listy rozwijanej i kliknij przycisk Uruchom . W programie Visual Studio może zostać wyświetlony komunikat z prośbą o ręczne uruchomienie aplikacji na urządzeniu w celu uruchomienia sesji debugowania.
Podczas debugowania możesz wprowadzić zmiany w plikach kodu, a następnie nacisnąć przycisk Uruchom ponownie na pasku narzędzi debugowania lub użyć klawiszy Ctrl+Shift+F5 , aby ponownie uruchomić sesję debugowania z zastosowanymi nowymi zmianami:
Możesz również użyć symbolu HOTRESTART
preprocesora, aby uniemożliwić wykonywanie określonego kodu podczas debugowania przy użyciu funkcji ponownego uruchamiania na gorąco platformy Xamarin.
Ograniczenia
- Obecnie obsługiwane są tylko aplikacje systemu iOS utworzone za pomocą urządzeń z Xamarin.Forms systemem iOS.
- Obsługiwane są tylko 64-bitowe urządzenia z systemem iOS. Od systemu iOS 11 firma Apple nie zezwala już na uruchamianie aplikacji systemu iOS w architekturze 32-bitowej (urządzenia starsze niż i Telefon 5s).
- Pliki scenorysu i XIB nie są obsługiwane, a aplikacja może ulec awarii, jeśli próbuje załadować je w czasie wykonywania. Użyj symbolu
HOTRESTART
preprocesora, aby zapobiec wykonywaniu tego kodu. - Statyczne biblioteki i struktury systemu iOS nie są obsługiwane i mogą wystąpić błędy środowiska uruchomieniowego lub awarie, jeśli aplikacja spróbuje je załadować. Użyj symbolu
HOTRESTART
preprocesora, aby zapobiec wykonywaniu tego kodu. Obsługiwane są dynamiczne biblioteki systemu iOS. - Nie można użyć ponownego uruchomienia platformy Xamarin na gorąco, aby utworzyć pakiety aplikacji do publikowania. Do wykonania pełnej kompilacji, podpisywania i wdrażania aplikacji w środowisku produkcyjnym nadal będzie potrzebny komputer Mac.
- Wykazy zasobów nie są obecnie obsługiwane. W przypadku korzystania z ponownego uruchamiania gorąca aplikacja będzie wyświetlać domyślną ikonę i ekran uruchamiania aplikacji platformy Xamarin. Po połączeniu z komputerem Mac lub utworzeniu aplikacji na komputerze Mac katalogi zasobów będą działać.
Rozwiązywanie problemów
- Istnieje znany problem polegający na tym, że włączenie kompilacji specyficznych dla urządzenia uniemożliwia aplikacji wprowadzanie trybu debugowania. Obejście polega na wyłączeniu tej opcji w obszarze Właściwości kompilacji > systemu iOS i ponów próbę debugowania. Zostanie to naprawione w przyszłej wersji.
- Jeśli aplikacja jest już obecna na urządzeniu, próba wdrożenia przy użyciu ponownego uruchomienia na gorąco może zakończyć się niepowodzeniem
AMDeviceStartHouseArrestService
z powodu błędu. Obejściem jest odinstalowanie aplikacji na urządzeniu, a następnie ponowne wdrożenie. - Wprowadzenie identyfikatora Apple ID, który nie jest częścią programu Apple Developer Program, może spowodować następujący błąd:
Authentication Error. Xcode 7.3 or later is required to continue developing with your Apple ID
. Aby korzystać z ponownego uruchamiania platformy Xamarin na urządzeniach z systemem iOS, musisz mieć prawidłowe konto dla deweloperów firmy Apple.
Aby zgłosić dodatkowe problemy, skorzystaj z narzędzia do przesyłania opinii w witrynie Pomoc > Wyślij opinię > Zgłoś problem.