Řešení potíží s Xamarin Profilerem

Protokolování a diagnostika

Tým Xamarinu vám může pomoct sledovat problémy, pokud nám poskytnete informace, včetně následujících:

  • Screencast problému, chybového ukončení nebo selhání a pracovního postupu, který na něj vede.
  • Výstupy protokolu (viz níže).
  • Vygenerovaný soubor .mlpd pro relaci profilace (viz níže).

Získání výstupů protokolu

V protokolech Mac jsou uloženy do ~/Library/Logs/Xamarin.Profiler/Profiler.<date>.log.

Ve Windows se ukládají do %appdata%Local//Xamarin/Log/Xamarin.Profiler/Profiler.<date>.log nejnovějšího protokolu při každém odeslání problému.

Průběžně přidáváme další protokolování, takže by se měl tento výstup v průběhu času zvětšit a zvýšit jeho užitečnost.

Generování souborů .mlpd

Soubor .mlpd je komprimovaný výstup profileru mono runtime. Grafické uživatelské rozhraní Xamarin Profiler načte data z souboru .mlpd a zobrazí je pro uživatele. Soubory .mlpd jsou užitečné nástroje pro ladění pro Xamarin, protože pomáhají našim technikům diagnostikovat problémy, které profiler může mít s vašimi daty.

Soubor .mlpd pro aktuální relaci se automaticky uloží do adresáře počítače Mac /tmp a lze ho identifikovat pomocí časového razítka. Pokud zapnete protokolování, prvním výstupem bude cesta k souboru .mlpd . Soubor .mlpd bude normálně uložen v adresáři začínající ~/var/folders...

Soubor .mlpd pro aktuální relaci lze uložit také tak, že v nabídce Profileru zvolíte > Možnost Uložit jako... soubor:

Visual Studio pro Mac:

Saving .mlpd file in Visual Studio for Mac

Visual Studio:

Saving .mlpd file in Visual Studio

Je důležité si uvědomit, že .mlpd obsahuje mnoho informací a velikost souboru bude velká.

Řešení problému

V následujícím seznamu jsou uvedeny běžné návody, alternativní řešení a tipy a triky pro použití profileru.

Poznámka:

Abyste mohli tuto funkci odemknout v sadě Visual Studio Enterprise ve Windows nebo Visual Studio pro Mac, musíte být předplatitelem sady Visual Studio Enterprise.

Nevidím možnost profileru pro iOS nebo je neaktivní [Visual Studio a Visual Studio pro Mac]

Pokud chcete tento problém vyřešit, zkontrolujte následující nastavení:

  • Ujistěte se, že používáte konfiguraci ladění.
  • Ujistěte se, že používáte systém uvolňování paměti SGen.
  • Ujistěte se, že je platforma podporovaná.
  • Ujistěte se, že máte správnou licenci.
  • Ujistěte se, že jste přihlášeni a správně ověřeni.
  • [Visual Studio] Musíte používat Visual Studio Enterprise a mít platnou licenci Enterprise.

Při pokusu o spuštění profileru se zobrazí chyba

Pokud při použití profileru v sadě Visual Studio dojde k této chybě:

Error box when using the profiler in Visual Studio

Obvykle je příčinou nemožnosti spustit simulátor nebo emulátor. Zkuste aplikaci spustit normálně, opravte problémy, které poskytuje, a zkuste profiler použít znovu.

Sledování konkrétního vlákna

Pokud máte vlákno, které jste chtěli konkrétně sledovat, bylo by ideální pojmenovat vlákno na samém začátku jeho vytvoření, aby místo ThreadName0x0. Pokud chcete například nastavit název vlákna jako UI, můžete použít následující kód:

RunOnUiThread (() => {
  Thread.CurrentThread.Name  = "UI";
});