Horké restartování v prostředí Xamarin
Xamarin Hot Restart umožňuje rychle otestovat změny aplikace během vývoje, včetně úprav kódu s více soubory, prostředků a odkazů. Nasdílí nové změny stávající sadě aplikací do cíle ladění, což vede k mnohem rychlejšímu cyklu sestavení a nasazení.
Důležité
Xamarin Hot Restart je aktuálně k dispozici v sadě Visual Studio 2019 verze 16.5 stabilní a podporuje aplikace pro iOS používající Xamarin.Forms. Podpora Visual Studio pro Mac a jinýchXamarin.Forms aplikací je v plánu.
Požadavky
- Visual Studio 2019 verze 16.5 nebo vyšší
- iTunes (Microsoft Store nebo 64bitová verze)
- Účet Apple Developer a placená registrace programu Apple Developer Program
Počáteční nastavení
Poznámka:
Xamarin Hot Restart je ve výchozím nastavení v sadě Visual Studio 16.8 a předchozích verzích zakázaný. Můžete ho povolit v části > Nástroje Možnosti > prostředí > Preview funkce > povolit Xamarin Hot Restart. Počínaje sadou Visual Studio 16.9 je ve výchozím nastavení aktivní restartování Xamarinu zapnuté a můžete ho vypnout v nástrojích > Možnosti > Xamarinu > iOS Nastavení > Povolit restartování za tepla.
Ujistěte se, že je projekt pro iOS nastavený jako spouštěný projekt a konfigurace sestavení je nastavená na Debug|i Telefon.
- Pokud se jedná o existující projekt, přejděte na Build > Configuration Manager... a ujistěte se, že je pro projekt iOS povolené nasazení .
Výběrem a kliknutím na místní zařízení na panelu nástrojů spusťte průvodce nastavením:
Pokud iTunes není nainstalován, klepněte na tlačítko Stáhnout iTunes stáhnout instalační program. Po dokončení instalace iTunes klikněte na Další .
Připojte zařízení iOS ke svému počítači. Pokud už bylo zařízení připojené, odpojte ho a pak ho znovu připojte. Po zjištění se název zařízení zobrazí v průvodci. Klikněte na tlačítko Další.
Zadejte přihlašovací údaje účtu Apple Developer a klikněte na Další.
Pomocí rozevírací nabídky vyberte vývojový tým, abyste v projektu povolili automatické zřizování . Klikněte na Finish (Dokončit).
Poznámka:
Použití automatického zřizování se doporučuje, aby bylo možné snadno nakonfigurovat další zařízení s iOSem pro nasazení. Pokud však existují správné zřizovací profily, můžete ho zakázat a dál používat ruční zřizování.
Použití horkého restartování Xamarinu
Po počátečním nastavení se připojené zařízení zobrazí v rozevírací nabídce cíle ladění. Pokud chcete ladit aplikaci, vyberte zařízení v rozevíracím seznamu a klikněte na tlačítko Spustit . V sadě Visual Studio se může zobrazit zpráva s žádostí o ruční spuštění aplikace na zařízení, abyste mohli spustit ladicí relaci.
Při ladění můžete provádět úpravy souborů kódu a pak stisknout tlačítko Restartovat na panelu nástrojů ladění nebo pomocí ctrl+Shift+F5 restartovat ladicí relaci s použitím nových použitých změn:
Pomocí symbolu preprocesoru HOTRESTART
můžete také zabránit spuštění určitého kódu při ladění pomocí horkého restartování Xamarinu.
Omezení
- V současné době se podporují jenom aplikace pro iOS vytvořené pomocí zařízení s iOSem Xamarin.Forms .
- Podporují se jenom 64bitová zařízení s iOSem. Od iOSu 11 už Apple neumožňuje spouštění aplikací pro iOS v 32bitové architektuře (zařízení starších než i Telefon 5s).
- Scénáře a soubory XIB nejsou podporovány a aplikace může dojít k chybovému ukončení, pokud se pokusí tyto soubory načíst za běhu. Pomocí symbolu preprocesoru
HOTRESTART
zabráníte spuštění tohoto kódu. - Statické knihovny a architektury pro iOS se nepodporují a v případě, že se aplikace pokusí načíst, můžou se zobrazit chyby za běhu nebo chybové ukončení. Pomocí symbolu preprocesoru
HOTRESTART
zabráníte spuštění tohoto kódu. Podporují se dynamické knihovny pro iOS. - K vytvoření sad aplikací pro publikování nemůžete použít Xamarin Hot Restart. K úplné kompilaci, podepisování a nasazení aplikace do produkčního prostředí budete stále potřebovat počítač Mac.
- Katalogy prostředků se v současné době nepodporují. Při použití horkého restartování se v aplikaci zobrazí výchozí ikona a obrazovka pro spuštění aplikací Xamarin. Při spárování s Počítačem Mac nebo vývojem na Macu budou vaše katalogy assetů fungovat.
Odstraňování potíží
- Existuje známý problém, kdy povolení sestavení specifických pro zařízení brání aplikaci v režimu ladění. Alternativním řešením je zakázat tuto možnost v části Vlastnosti > sestavení iOS a zkusit ladění znovu. Tato oprava bude opravena v budoucí verzi.
- Pokud už aplikace na zařízení existuje, může pokus o nasazení s chybou selhat s chybou
AMDeviceStartHouseArrestService
. Alternativním řešením je odinstalovat aplikaci na zařízení a pak aplikaci nasadit znovu. - Zadání Apple ID, které není součástí programu Apple Developer Program, může vést k následující chybě:
Authentication Error. Xcode 7.3 or later is required to continue developing with your Apple ID
. Abyste mohli na zařízeních s iOSem používat Xamarin Hot Restart, musíte mít platný vývojářský účet Apple.
Pokud chcete nahlásit další problémy, použijte nástroj pro zpětnou vazbu v části Nápověda > Odeslat > zprávu o problému.