Общий доступ к коду на нескольких платформах
В этих статьях описываются различные варианты совместного использования кода на разных платформах, включая Windows, Android, iOS и многое другое.
Общие сведения о совместном использовании кода
Узнайте о различных вариантах совместного использования кода, доступных для проектов Xamarin, включая библиотеки .NET Standard и общие проекты. Переносимые библиотеки классов также поддерживаются, однако они считаются устаревшими в пользу .NET Standard.
.NET Standard
.NET Standard — это предпочтительный вариант совместного использования кода на разных платформах. Код построен на основе определенной версии (2.0 обеспечивает лучшую совместимость API с существующим кодом платформа .NET Framework) и затем может использоваться другими проектами, поддерживающими этот уровень или выше. Проекты .NET Standard поддерживаются как в Visual Studio 2019, так и в Visual Studio 2019 для Mac.
Общие проекты
Общие проекты позволяют писать общий код, на который ссылается ряд различных проектов приложений. Код компилируется как часть каждого проекта ссылки и может включать директивы компилятора для включения функциональных возможностей конкретной платформы в общую базу кода. В этой статье описывается, как работают общие проекты и как создавать и использовать их с проектами Xamarin.
Переносимые библиотеки классов
Переносимые проекты библиотек классов позволяют создавать и распространять сборки, содержащие общий код для выполнения на нескольких платформах. Чтобы создать переносимую библиотеку классов (или PCL), сначала выберите платформы для целевой платформы, а затем напишите код в подсети платформа .NET Framework, доступной в профиле, определенном для этих платформ. PcLs считаются устаревшими в последних версиях Visual Studio; вместо этого разработчикам рекомендуется использовать .NET Standard 2.0.
Проекты NuGet: многоплатформные библиотеки для совместного использования кода
Пакеты NuGet можно создавать автоматически из проектов PCL или .NET standard; и общие проекты можно упаковываться в пакеты NuGet с помощью отдельного типа проекта NuGet . В этом разделе объясняется, как создавать пакеты NuGet для каждого сценария совместного использования кода.
Создание пакетов NuGet вручную для Xamarin
Советы для создания пакетов NuGet, работающих с платформой Xamarin.
Использование библиотек C/C++ в кроссплатформенных проектах Xamarin
Этот метод позволяет отделить эволюцию библиотек C/C++, привязку C# в NuGet и приложениях Xamarin. Функции предоставляются библиотекой C/C++ собственной платформы, но весь код, зависящий от платформы, изолирован от окончательных приложений Xamarin, что позволяет максимально возможной производительности без дублирования кода.