Sdílení kódu na různých platformách

tyto články vysvětlují různé možnosti, které jsou k dispozici pro sdílení kódu napříč platformami, včetně Windows, androidu, iOS a dalších.

Přehled sdílení kódu

Seznamte se s různými možnostmi sdílení kódu, které jsou k dispozici pro projekty Xamarin, včetně .NET Standard knihoven a sdílených projektů. Podporují se také přenositelné knihovny tříd, ale považují se za zastaralé namísto .NET Standard.

.NET Standard

.NET Standard je upřednostňovanou možností pro sdílení kódu napříč platformami. kód je sestaven proti konkrétní verzi (2,0 poskytuje nejlepší kompatibilitu s rozhraním API s existujícím kódem .NET Framework) a může být následně zpracován jinými projekty, které tuto úroveň podporují nebo jsou vyšší. .NET Standard projekty jsou podporovány v Visual Studio 2019 a Visual Studio 2019 pro Mac.

Sdílené projekty

Sdílené projekty umožňují psát společný kód, na který odkazuje několik různých aplikačních projektů. Kód je kompilován jako součást každého odkazujícího projektu a může obsahovat direktivy kompilátoru, které mohou začlenit funkce specifické pro platformu v rámci sdíleného kódu. Tento článek popisuje, jak fungují sdílené projekty a jak je vytvořit a používat s projekty Xamarin.

Přenosné knihovny tříd

Přenositelné knihovny tříd umožňují sestavení a distribuci sestavení, která obsahují sdílený kód pro spuštění na více platformách. chcete-li vytvořit přenosnou knihovnu tříd (nebo "PCL"), nejprve vyberte, které platformy se mají cílit, a pak napište kód na dílčí sadu .NET Framework, který je k dispozici v profilu definovaném pro tyto platformy. PCLs se považují za zastaralé v nejnovějších verzích Visual Studio. vývojářům doporučujeme místo toho použít .NET Standard 2,0.

NuGet projekty: knihovny multiplatformní pro sdílení kódu

balíčky NuGet mohou být automaticky vygenerovány z projektů PCL nebo .net standard. sdílené projekty lze zabalit do NuGet balíčků s návnadami a přepínači pomocí samostatného typu projektu NuGet. v této části se dozvíte, jak vytvořit balíčky NuGet pro každý scénář pro sdílení kódu.

ruční vytváření balíčků NuGet pro Xamarin

Tipy pro vytváření balíčků NuGet, které pracují s platformou Xamarin.

Použití knihoven C/C++ v projektech Xamarin pro různé platformy

tento postup umožňuje oddělit vývoj knihoven C/C++, vazbu jazyka C# v NuGet a vašich aplikací Xamarin. Funkcionalita je poskytována knihovnou nativní platformy C/C++, ale veškerý kód specifický pro platformu je izolovaný od konečné aplikace Xamarin, což umožňuje nejvyšší možný výkon bez Duplikace kódu.