Profilace aplikací pro Android
Před nasazením aplikace do app Storu je důležité identifikovat a opravit případné kritické body výkonu, problémy s nadměrným využitím paměti nebo neefektivní využití síťových prostředků. Pro tento účel jsou k dispozici dva nástroje profileru:
- Xamarin Profiler
- Android Profiler v Android Studiu
Tato příručka představuje Xamarin Profiler a poskytuje podrobné informace o tom, jak začít používat Android Profiler.
Xamarin Profiler
Xamarin Profiler je samostatná aplikace integrovaná se sadou Visual Studio a Visual Studio pro Mac pro profilaci aplikací Xamarin z integrovaného vývojového prostředí (IDE). Další informace o použití Xamarin Profiler naleznete v tématu Xamarin Profiler.
Poznámka:
Abyste mohli funkci Xamarin Profiler odemknout v sadě Visual Studio Enterprise ve Windows nebo Visual Studio pro Mac, musíte být předplatitelem sady Visual Studio Enterprise.
Android Studio Profiler
Android Studio 3.0 a novější obsahuje nástroj Android Profiler. Profiler pro Android můžete použít k měření výkonu aplikace Xamarin Android vytvořené pomocí sady Visual Studio bez nutnosti licence Visual Studio Enterprise. Na rozdíl od Xamarin Profiler však Android Profiler není integrovaný se sadou Visual Studio a lze jej použít pouze k profilování balíčku aplikace pro Android (APK), který byl předem sestaven a importován do Android Profiler.
Spuštění aplikace Xamarin Pro Android v Android Profileru
Následující kroky vysvětlují, jak spustit aplikaci Xamarin Android v nástroji Android Profiler sady Android Studio. Na následujících ukázkových snímcích obrazovky se sestaví ukázková aplikace Xamarin Forms a profiluje se pomocí Android Profileru:
V možnostech sestavení projektu Pro Android zakažte použít sdílený modul runtime. Tím se zajistí, že se balíček aplikace pro Android (APK) sestaví bez závislosti na sdíleném modulu runtime Mono runtime pro vývoj.
Sestavte aplikaci pro ladění a nasaďte ji do fyzického zařízení nebo emulátoru. To způsobí, že se sestaví podepsaná verze ladicího souboru APK. V příkladu XamagonXuzzle se výsledný soubor APK jmenuje com.companyname.XamagonXuzzle-Signed.apk.
Otevřete složku projektu a přejděte do složky bin/Debug. V této složce vyhledejte Signed.apk verzi aplikace a zkopírujte ji na pohodlně přístupné místo (například na ploše). Na následujícím snímku obrazovky se soubor APK com.companyname.XamagonXuzzle-Signed.apk nachází a zkopíruje na plochu:
Spusťte Android Studio a vyberte Profil nebo ladit APK:
V dialogovém okně Vybrat soubor APK přejděte na soubor APK, který jste vytvořili a zkopírovali dříve. Vyberte APK a klikněte na OK:
Android Studio načte APK a dissassembles třídy.dex:
Po načtení APK android Studio zobrazí následující obrazovku projektu apk. Pravým tlačítkem myši klikněte na název aplikace ve stromovém zobrazení vlevo a vyberte Otevřít modul Nastavení:
Přejděte na Moduly projectu Nastavení>, vyberte uzel -Signed aplikace a potom klikněte na <Bez sady SDK>:
V rozevírací nabídce Sady SDK modulu vyberte úroveň sady Android SDK, která se použila k sestavení aplikace (v tomto příkladu se k sestavení XamagonXuzzle použila úroveň rozhraní API 26):
Chcete-li toto nastavení uložit, klikněte na tlačítko Použít a OK .
Spusťte profiler z ikony panelu nástrojů:
Vyberte cíl nasazení pro spuštění nebo profilaci aplikace a klikněte na OK. Cílem nasazení může být fyzické zařízení nebo virtuální zařízení spuštěné v emulátoru. V tomto příkladu se používá zařízení Nexus 5X:
Po spuštění profileru bude trvat několik sekund, než se připojí k zařízení pro nasazení a procesu aplikace. Během instalace APK bude Android Profiler hlásit žádná připojená zařízení a žádné laditelné procesy.
Po několika sekundách android Profiler dokončí instalaci APK a spustí APK, hlásí název zařízení a název procesu aplikace profilovaný (v tomto příkladu LGE Nexus 5X a com.companyname.XamagonXuzzle, v uvedeném pořadí):
Po identifikaci zařízení a ladění procesu začne Android Profiler profilovat aplikaci:
Pokud klepnete na tlačítko RANDOMIZE na XamagonXuzzle (což způsobí, že se dlaždice posunou a náhodně změní), zobrazí se zvýšení využití procesoru během intervalu randomizace aplikace:
Použití profileru androidu
Podrobné informace o používání nástroje Android Profiler najdete v dokumentaci k Android Studiu. Vývojáři Xamarinu pro Android budou zajímat následující témata:
Cpu Profiler – vysvětluje, jak v reálném čase kontrolovat využití procesoru a aktivitu vláken aplikace.
Profiler paměti – zobrazuje graf využití paměti aplikace v reálném čase a obsahuje tlačítko pro zaznamenání přidělení paměti pro analýzu.
Network Profiler – zobrazuje síťovou aktivitu dat odesílaných a přijatých aplikací v reálném čase.