Кроссплатформенная разработка для мобильных устройств в Visual Studio

Область применения:yesVisual StudionoVisual Studio для Mac noVisual Studio Code

Используя Visual Studio, можно создавать приложения для устройств Android, iOS и Windows. При разработке приложения вы можете использовать инструменты Visual Studio для добавления подключенных служб, таких как Microsoft 365, Служба приложений Azure и Application Insights.

Поддерживается создание приложений с помощью C# и .NET Framework, HTML и JavaScript или C++. Существует возможность совместного использования кода, строк, изображений, а в некоторых случаях даже пользовательского интерфейса.

Для создания игр или мощных графических приложений установите инструменты Visual Studio для Unity. Это позволит максимально эффективно использовать функции Visual Studio и Unity — популярного движка и среды разработки для игр и мощных графических приложений в Windows, iOS, Android и на других платформах.

Сборка приложений для устройств Android, iOS и Windows (.NET Framework)

Снимок экрана: различные типы домашних устройств.

С помощью инструментов Visual Studio для Xamarin вы можете указать Android, iOS и Windows в качестве целевых устройств в одном и том же решении, при этом код и даже пользовательский интерфейс будут использоваться совместно.

Дополнительные сведения
Установка Visual Studio (VisualStudio.com)
Сведения о Xamarin в Visual Studio (VisualStudio.com)
Документация для разработки мобильных приложений Xamarin
DevOps с приложениями Xamarin
См. дополнительные сведения об универсальных приложениях Windows в Visual Studio (VisualStudio.com)
Сведения о сходстве между Swift и C# (download.microsoft.com)

Целевые устройства Android, iOS и Windows из единой базы кода

Вы можете создавать собственные приложения для Android, iOS и Windows с помощью C# и F# (Visual Basic сейчас не поддерживается). Для начала работы установите Visual Studio, выберите в установщике параметр Разработка мобильных приложений на .NET.

Если у вас уже установлена Visual Studio, повторно запустите Visual Studio Installer и выберите тот же параметр Разработка мобильных приложений на .NET для Xamarin (как показано ранее).

После окончания установки шаблоны проектов появятся в диалоговом окне Новый проект. Чтобы найти шаблоны Xamarin, проще всего ввести "Xamarin" в строке поиска.

Xamarin предоставляет собственные функции Android, iOS и Windows в виде классов и методов .NET. Ваши приложения будут иметь полный доступ к собственным API-интерфейсам и собственным элементам управления и будут вести себя так же, как приложения, написанные на собственных языках платформ.

После создания проекта вы сможете использовать все функции повышения продуктивности в составе Visual Studio. Например, вы сможете создавать страницы с помощью конструктора и изучить собственные API-интерфейсы мобильных платформ с помощью IntelliSense. Для запуска готового приложения и оценки его интерфейса можно использовать эмулятор пакета SDK для Android и запускать приложения в собственной среде Windows. Вы также можете использовать связанные устройства Android и Windows напрямую. Для проектов iOS необходимо подключиться к компьютеру Mac, подключенному к сети, и запустить эмулятор iOS из Visual Studio или подключиться к связанному устройству.

Создание одного набора страниц, отображаемого на всех устройствах, с помощью Xamarin.Forms

В зависимости от сложности конструкции приложения, возможно, имеет смысл использовать для его создания шаблоны Xamarin.Forms в группе шаблонов проектов Мобильные приложения . Xamarin.Forms — это набор средств разработки пользовательского интерфейса, с помощью которого можно создать единый интерфейс приложения для совместного использования на устройствах Android, iOS и Windows. При компиляции решения Xamarin.Forms вы получаете приложение для Android, приложение для iOS и приложение для Windows. Дополнительные сведения см. в разделе Дополнительные сведения о разработке мобильных приложений с помощью Xamarin и в документации по Xamarin.Forms.

Совместное использование кода приложениями Android, iOS и Windows

Если вы не используете Xamarin.Forms и предпочитаете разрабатывать приложения для каждой платформы отдельно, вы можете совместно использовать большую часть кода, не относящегося к пользовательскому интерфейсу, в проектах для разных платформ (Android, iOS и Windows). К нему относятся любая бизнес-логика, интеграция в облаке, доступ к базе данных или любой другой код, предназначенный для платформы .NET Framework. Единственным кодом, который нельзя совместно использовать, является код, предназначенный для конкретной платформы.

Снимок экрана: логическая схема совместного использования кода между пользовательскми интерфейсами Windows, iOS и Android.

Код можно совместно использовать с помощью общего проекта, проекта переносимой библиотеки классов или обоих этих проектов. Может оказаться, что какой-то код больше подходит в общем проекте, а другой код лучше себя ведет в рамках проекта переносимой библиотеки классов.

Дополнительные сведения
Варианты совместного использования кода (Xamarin)
Варианты общего доступа к коду в .NET

Целевые устройства Windows 10

Снимок экрана: различные типы устройств Windows.

Если вы хотите создать одно приложение, предназначенное для полного спектра устройств Windows 10, создайте универсальное приложение Windows. Разработка приложения будет осуществляться с помощью одного проекта, а страницы будут отображаться должным образом независимо от того, какое устройство используется для их просмотра.

Начните с шаблона проекта приложения на универсальной платформе Windows (UWP). Вы можете визуально разрабатывать страницы, а затем открывать их в окне предварительного просмотра, чтобы увидеть, как они будут отображаться для различных типов устройств. Если вас не устраивает, как страница отображается на устройстве, вы можете оптимизировать ее в соответствии с размером экрана, разрешением или ориентацией (горизонтальной или вертикальной). Все это можно сделать с помощью удобных инструментальных окон и пунктов меню в Visual Studio. Когда вы будете готовы к запуску приложения и пошаговому выполнению кода, вы сможете найти все эмуляторы и имитаторы для различных типов устройств в одном раскрывающемся списке на стандартной панели инструментов.

Дополнительные сведения
Общие сведения об универсальной платформе Windows
Создание первого приложения
Разработка приложений для универсальной платформы Windows (UWP)

Создание приложения для Android, iOS и Windows (C++)

Снимок экрана: использование C++ для создания Android, iOS и Windows.

Сначала установите Visual Studio и рабочую нагрузку Разработка мобильных приложений на C++ . Затем вы сможете создать приложение Native Activity для Android, Windows или iOS. Одно и то же решение можно ориентировать на устройства Android, iOS и Windows, а затем наладить совместное использование кода между ними с помощью общей кроссплатформенной статической или динамической библиотеки.

Если вам нужно создать приложение для Android, требующее сложных операций с графикой (например, игру), можно воспользоваться C++. Начните с проекта Native Activity (Android) . В этом проекте реализована полная поддержка цепочки инструментов Clang.

Снимок экрана: шаблон проекта Native Activity.

Для запуска готового приложения и оценки его интерфейса воспользуйтесь Android Emulator. Это быстрый, надежный и простой в установке и настройке инструмент.

Вы можете создавать приложения, ориентированные на весь спектр устройств под управлением Windows 10, с помощью C++ и шаблона проекта приложения универсальной платформы Windows (UWP). Дополнительные сведения см. в разделе Целевые устройства Windows 10 ранее в этой статье.

С помощью статической или динамической общей библиотеки вы сможете совместно использовать код С++ между устройствами Android, iOS и Windows.

Снимок экрана: статические и динамические общие библиотеки.

Эту библиотеку можно использовать в проекте Windows, iOS или Android, как описано ранее в этой статье. Также ее можно использовать в приложении, созданном с помощью Xamarin, Java или любого другого языка, который позволяет вызывать функции в неуправляемой библиотеке DLL.

При написании кода в этих библиотеках можно использовать IntelliSense для просмотра собственных API платформ Android и Windows. Эти проекты библиотек полностью интегрированы с отладчиком Visual Studio, чтобы можно было задать точки останова. Пошаговые инструкции по коду, поиску и устранению проблем с помощью всех расширенных функций отладчика.

Дополнительные сведения
Загрузка Visual Studio (VisualStudio.com)
Установка Visual C++ для разработки кроссплатформенных мобильных приложений на языке C++
Дополнительные сведения об использовании C++ для настройки для нескольких платформ (VisualStudio.com)
Установка нужных компонентов и создание нативного приложения С++ для Android
Дополнительные сведения о совместном использовании кода C++ с приложениями Android и Windows (VisualStudio.com)
Примеры разработки кроссплатформенных мобильных приложений для C++

Создание кросс-платформенной игры для устройств Android, iOS и Windows с использованием инструментов Visual Studio для Unity

Инструменты Visual Studio для Unity представляют собой бесплатное расширение Visual Studio, которое интегрирует мощные функции редактирования кода, повышения продуктивности и средства отладки в составе Visual Studio с Unity, популярной кроссплатформенной системой и средой разработки для игр и мощных графических приложений на платформах Windows, iOS, Android и других платформах, включая веб-приложения.

Снимок экрана: обзор Инструментов Visual Studio для Unity и среды разработки.

Средства Visual Studio для Unity (VSTU) позволяют использовать Visual Studio для создания сценариев игр и редакторов на языке C#, а затем использовать его мощный отладчик для поиска и исправления ошибок. В последнем выпуске VSTU реализована поддержка Unity 2019.4, включена цветовая маркировка синтаксиса для языка шейдера ShaderLab системы Unity, усовершенствована синхронизация с Unity, добавлены дополнительные функции отладки и улучшены механизмы создания кода благодаря использованию мастера MonoBehavior. VSTU также объединяет файлы проекта Unity, сообщения консоли и возможность запускать игру в Visual Studio, чтобы тратить меньше времени на переключение в редактор Unity Editor и из него при написании кода.

Дополнительные сведения
Дополнительные сведения о построении игр Unity с помощью Visual Studio
Подробнее об инструментах Visual Studio для Unity
Начало работы с инструментами Visual Studio для Unity
Читать о последних возможностях Visual Studio Tools для предварительной версии Unity 2.0 (блог Visual Studio)
Смотреть видео с введением в Visual Studio Tools для предварительной версии Unity 2.0 (видео)
Сведения о Unity (веб-сайт Unity)

См. также