Поделиться через


Общий доступ к коду на нескольких платформах

В этих статьях описываются различные варианты совместного использования кода на разных платформах, включая 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, что позволяет максимально возможной производительности без дублирования кода.