Možnosti linkeru Xamarin.Mac

Propojení je výkonný nástroj pro optimalizaci, který snižuje velikost aplikace odebráním nepoužívaného kódu.

Přehled

Na základě cílové architektury, které váš projekt používá, můžou být dostupné možnosti linkeru omezené. Důvodem je skutečnost, že propojení vyžaduje vytvoření objektového grafu každého typu, který používá vaše aplikace, a to není možné v plné (nebo nepodporované) kvůli System.Configuration.

K dispozici jsou čtyři možnosti:

  • Žádné – Zakažte všechna propojení. Výchozí nastavení v konfiguraci ladění v moderních a všech konfiguracích v plném rozsahu.
  • SDK – Propojuje všechna sestavení sady SDK , s výjimkou uživatelských sestavení. Výchozí nastavení v konfiguraci vydané verze v moderní verzi. Není k dispozici na plný.
  • Full – Propojit všechna sestavení. To vyžaduje, aby kód uživatele byl bezpečný pro linker a další informace najdete v poznámkách . Není k dispozici na plný.
  • Platforma – Propojení jen Xamarin.Mac.dll. Podrobnosti najdete níže.

Propojení platforem

Propojení aplikací pomocí úplného cílového rozhraní je obecně nebezpečné, ale existuje řada scénářů, ve kterých je vyžadována velmi omezená forma propojení.

Například aplikace odeslané do macOS App Storu nesmí odkazovat na řadu zastaralých rozhraní API (například QTKit), z nichž některé Xamarin.Mac obsahují vazby. I když aplikace tyto vazby nevolají, vyvolání bude existovat v sadě SDK a bude odmítnuto.

Propojení platformy předpokládá, že aplikace a seznam BCL jsou nebezpečné linkery a odeberete nepoužívaný kód z Xamarin.Mac.dll.

Jakékoli aplikace, které se neodmítají na Xamarin.Mac.dll typech, uvidí menší zlepšení spouštění z odstranění nepotřebných typů.

Propojení platforem je obecně užitečné jenom pro aplikace používající plně cílovou architekturu, protože moderní aplikace může používat výkonnější možnost sady SDK.

Nastavení konfigurace linkeru

Pokud chcete změnit konfiguraci linkeru pro projekt Xamarin.Mac, postupujte takto:

  1. Otevřete projekt Xamarin.Mac v Visual Studio pro Mac.

  2. V Průzkumník řešení poklikejte na soubor projektu a otevřete dialogové okno Možnosti projektu.

  3. Na kartě Sestavení pro Mac vyberte typ chování linkeru, který vyhovuje potřebám vaší aplikace:

    Choose which linker behavior to use

  4. Propojení platformy pro úplné cílové architektury se v integrovaném vývojovém prostředí (IDE) nezobrazí až do budoucí aktualizace. Do té doby přidejte --linkplatform místo toho další argumenty mmp.

  5. Kliknutím na tlačítko OK uložte provedené změny.