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

Используя Visual Studio, можно создавать приложения для устройств Android, iOS и Windows.You can build apps for Android, iOS, and Windows devices by using Visual Studio. При разработке приложения вы можете использовать инструменты Visual Studio для добавления подключенных служб, таких как Office 365, служба приложений Azure и Application Insights.As you design your app, use tools in Visual Studio to easily add connected services such as Office 365, Azure App Service, and Application Insights.

Поддерживается создание приложений с помощью C# и .NET Framework, HTML и JavaScript или C++.Build your apps by using C# and the .NET Framework, HTML and JavaScript, or C++. Существует возможность совместного использования кода, строк, изображений, а в некоторых случаях даже пользовательского интерфейса.Share code, strings, images, and in some cases even the user interface.

Для создания игр или мощных графических приложений установите инструменты Visual Studio для Unity. Это позволит максимально эффективно использовать функции Visual Studio и Unity — популярного движка и среды разработки для игр и мощных графических приложений в Windows, iOS, Android и на других платформах.If you want to build a game or immersive graphical app, install Visual Studio tools for Unity and enjoy all of the powerful productivity features of Visual Studio with Unity, the popular cross-platform game/graphics engine and development environment for apps that run on iOS, Android, Windows, and other platforms.

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

УстройстваDevices

С помощью инструментов Visual Studio для Xamarin вы можете указать Android, iOS и Windows в качестве целевых устройств в одном и том же решении, при этом код и даже пользовательский интерфейс будут использоваться совместно.With Visual Studio Tools for Xamarin, you can target Android, iOS, and Windows in the same solution, sharing code and even UI.

Дополнительные сведенияLearn more
Установка Visual Studio (VisualStudio.com)Install Visual Studio (VisualStudio.com)
Сведения о Xamarin в Visual Studio (VisualStudio.com)Learn about Xamarin in Visual Studio (VisualStudio.com)
Документация для разработки мобильных приложений XamarinXamarin mobile app development documentation
DevOps с приложениями XamarinDevOps with Xamarin apps
См. дополнительные сведения об универсальных приложениях Windows в Visual Studio (VisualStudio.com)Learn about Universal Windows apps in Visual Studio (VisualStudio.com)
Сведения о сходстве между Swift и C# (download.microsoft.com)Learn about the similarities between Swift and C# (download.microsoft.com)

Целевые устройства Android, iOS и Windows из единой базы кодаTarget Android, iOS, and Windows from a single code base

Вы можете создавать собственные приложения для Android, iOS и Windows с помощью C# и F# (Visual Basic сейчас не поддерживается).You can build native apps for Android, iOS, and Windows by using C# or F# (Visual Basic is not supported at this time). Для начала работы установите Visual Studio, выберите в установщике параметр Разработка мобильных приложений на .NET.To get started, install Visual Studio, select the Mobile Development with .NET option in the installer.

Если у вас уже установлена Visual Studio, повторно запустите Установщик Visual Studio и выберите ту же опцию Разработка мобильных приложений на .NET для Xamarin (как указано выше).If you already have Visual Studio installed, re-run the Visual Studio Installer and select the same Mobile Development with .NET option for Xamarin (as above).

После окончания установки шаблоны проектов появятся в диалоговом окне Новый проект.When you're done, project templates appear in the New Project dialog box. Чтобы найти шаблоны Xamarin, проще всего ввести "Xamarin" в строке поиска.The easiest way to find Xamarin templates is to just search on "Xamarin."

Xamarin предоставляет собственные функции Android, iOS и Windows в виде классов и методов .NET.Xamarin exposes the native functionality of Android, iOS, and Windows as .NET classes and methods. Поэтому ваши приложения будут иметь полный доступ к собственным API-интерфейсам и собственным элементам управления и будут вести себя точно так же, как приложения, написанные на собственных языках платформ.This means your apps have full access to native APIs and native controls, and they're just as responsive as apps written in the native platform languages.

После создания проекта вы сможете использовать все функции повышения продуктивности в составе Visual Studio.After you create a project, you'll leverage all of the productivity features of Visual Studio. Например, вы сможете создавать страницы с помощью конструктора и изучить собственные API-интерфейсы мобильных платформ с помощью IntelliSense.For example, you'll use a designer to create your pages, and use IntelliSense to explore the native API's of the mobile platforms. Для запуска готового приложения и оценки его интерфейса можно использовать эмулятор пакета SDK для Android и запускать приложения в собственной среде Windows.When you're ready to run your app and see how it looks, you can use the Android SDK emulator and run Windows apps natively. Вы также можете использовать связанные устройства Android и Windows напрямую.You can also use tethered Android and Windows devices directly. Для проектов iOS необходимо подключиться к компьютеру Mac, подключенному к сети, и запустить эмулятор iOS из Visual Studio или подключиться к связанному устройству.For iOS projects, connect to a networked Mac and start the iOS emulator from Visual Studio, or connect to a tethered device.

Создание одного набора страниц, отображаемого на всех устройствах, с помощью Xamarin.FormsDesign one set of pages that render across all devices by using Xamarin.Forms

В зависимости от сложности конструкции приложения, возможно, имеет смысл использовать для его создания шаблоны Xamarin.Forms в группе шаблонов проектов Мобильные приложения .Depending on the complexity of your apps design, you might consider building it by using Xamarin.Forms templates in the Mobile Apps group of project templates. Xamarin.Forms — это набор средств разработки пользовательского интерфейса, с помощью которого можно создать единый интерфейс приложения для совместного использования на устройствах Android, iOS и Windows.Xamarin.Forms is a UI toolkit that lets you create a single interface that you can share across Android, iOS, and Windows. При компиляции решения Xamarin.Forms вы получаете приложение для Android, приложение для iOS и приложение для Windows.When you compile a Xamarin.Forms solution, you'll get an Android app, an iOS app, and a Windows app. Дополнительные сведения см. в разделе Дополнительные сведения о разработке мобильных приложений с помощью Xamarin и в документации по Xamarin.Forms.For more details, see Learn about mobile development with Xamarin and the Xamarin.Forms documentation.

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

Если вы не используете Xamarin.Forms и предпочитаете разрабатывать приложения для каждой платформы отдельно, вы можете совместно использовать большую часть кода, не относящегося к пользовательскому интерфейсу, в проектах для разных платформ (Android, iOS и Windows).If you're not using Xamarin.Forms and choose to design for each platform individually, you can share most of your non-UI code between platform projects (Android, iOS, and Windows). К нему относятся любая бизнес-логика, интеграция в облаке, доступ к базе данных или любой другой код, предназначенный для платформы .NET Framework.This includes any business logic, cloud integration, database access, or any other code that targets the .NET Framework. Единственным кодом, который нельзя совместно использовать, является код, предназначенный для конкретной платформы.The only code that you can't share is code that targets a specific platform.

Совместное использование кода для пользовательского интерфейса Windows, iOS и AndroidShare code between Windows, iOS, and Android UIs

Код можно совместно использовать с помощью общего проекта, проекта переносимой библиотеки классов или обоих этих проектов.You can share your code by using a shared project, a Portable Class Library project, or both. Может оказаться, что какой-то код больше подходит в общем проекте, а другой код лучше себя ведет в рамках проекта переносимой библиотеки классов.You might find that some code fits best in a shared project, and some code makes more sense inside a Portable Class Library project.

Дополнительные сведенияLearn more
Варианты совместного использования кода (Xamarin)Sharing Code Options (Xamarin)
Варианты общего доступа к коду в .NETCode sharing options with .NET

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

Устройства WindowsWindows Devices

Если вы хотите создать одно приложение, предназначенное для полного спектра устройств Windows 10, создайте универсальное приложение Windows.If you want to create a single app that targets the full breadth of Windows 10 devices, create a universal Windows app. Разработка приложения будет осуществляться с помощью одного проекта, а страницы будут отображаться должным образом независимо от того, какое устройство используется для их просмотра.You'll design the app by using a single project and your pages will render properly no matter what device is used to view them.

Начните с шаблона проекта приложения на универсальной платформе Windows (UWP).Start with a Universal Windows Platform (UWP) app project template. Вы можете визуально разрабатывать страницы, а затем открывать их в окне предварительного просмотра, чтобы увидеть, как они будут отображаться для различных типов устройств.Design your pages visually, and then open them in a preview window to see how they appear for various types of devices. Если вас не устраивает, как страница отображается на устройстве, вы можете оптимизировать ее в соответствии с размером экрана, разрешением или ориентацией (горизонтальной или вертикальной).If you don't like how a page appears on a device, you can optimize the page to better fit the screen size, resolution, or various orientations such as landscape or portrait mode. Все это можно сделать с помощью удобных инструментальных окон и пунктов меню в Visual Studio.You can do all of that by using intuitive tool windows and easily accessible menu options in Visual Studio. Когда вы будете готовы к запуску приложения и пошаговому выполнению кода, вы сможете найти все эмуляторы и имитаторы для различных типов устройств в одном раскрывающемся списке на стандартной панели инструментов.When you're ready to run your app and step through your code, you'll find all of the device emulators and simulators for different types of devices together in one drop-down list that is located on the Standard toolbar.

Дополнительные сведенияLearn more
Общие сведения об универсальной платформе WindowsIntro to the Universal Windows Platform
Создание первого приложенияCreate your first app
Разработка приложений для универсальной платформы Windows (UWP)Develop apps for the Universal Windows Platform (UWP)
Перенос приложений на универсальную платформу Windows (UWP)Migrate apps to the Universal Windows Platform (UWP)

Сборка приложения для устройств Android, iOS и Windows (HTML/JavaScript)Build an app for Android, iOS, and Windows (HTML/JavaScript)

Устройства Windows, iOS и AndroidWindows, iOS, and Android devices

Если вы разработчик веб-решений и знакомы с HTML и JavaScript, то вы можете создавать приложения для целевых платформ Windows, Android и iOS с помощью средств Visual Studio для Apache Cordova.If you're a web developer, and you're familiar with HTML and JavaScript, you can target Windows, Android, and iOS by using Visual Studio Tools for Apache Cordova. Такие приложения могут быть ориентированы на все три платформы, и при их создании вы можете полагаться на привычные навыки и процедуры.These apps can target all three platforms and you can build them by using the skills and processes that you're most familiar with.

Apache Cordova — это платформа, включающая модель подключаемого модуля.Apache Cordova is a framework that includes a plug-in model. Модель подключаемого модуля предоставляет единый API-интерфейс JavaScript, который можно использовать для доступа к собственным возможностям устройств на всех трех платформах (iOS, Android и Windows).This plug-in model provides a single JavaScript API that you can use to access the native device capabilities of all three platforms (Android, iOS, and Windows).

Поскольку эти API-интерфейсы являются кроссплатформенными, большую часть написанного кода можно совместно использовать для всех трех платформ.Because these APIs are cross-platform, you can share most of what you write between all three platforms. Это снижает расходы на разработку и обслуживание.This reduces your development and maintenance costs. Кроме того, нет необходимости начинать с нуля.Also, there's no need to start from scratch. При создании других типов веб-приложений можно предоставить эти файлы приложению Cordova без каких-либо изменений и переработки.If you've created other types of web applications, you can share those files with your Cordova app without having to modify or redesign them in any way.

Гибридные приложения для нескольких устройств с использованием JavaScriptMulti-device hybrid apps with JavaScript

Чтобы приступить к работе, установите Visual Studio и выберите Разработка мобильных приложений на JavaScript во время установки.To get started, install Visual Studio and choose the Mobile Development with Javascript feature during setup. Инструменты Cordova автоматически установят любое стороннее программное обеспечение, необходимое для создания приложения для нескольких платформ.The Cordova tools automatically install all third-party software that's required to build your multi-platform app.

После установки расширения откройте Visual Studio и создайте проект пустого приложения (Apache Cordova) .After you've installed the extension, open Visual Studio and create a Blank App (Apache Cordova) project. Затем можно разработать приложение с помощью JavaScript или TypeScript.Then, you can develop your app by using JavaScript or Typescript. Кроме того, можно добавлять подключаемые модули для расширения функциональности приложения, и API-интерфейсы из подключаемых модулей будут появляться в IntelliSense в ходе написания кода.You can also add plug-ins to extend the functionality of your app, and APIs from plug-ins appear in IntelliSense as you write code.

Когда вы будете готовы к запуску приложения и пошаговому выполнению кода, выберите эмулятор, например Apache Ripple или Android Emulator, браузер или устройство, подключенное непосредственно к компьютеру.When you're ready to run your app and step through your code, choose an emulator, such as the Apache Ripple emulator or Android Emulator, a browser, or a device that you've connected directly to your computer. Запустите приложение.Then, start your app. Если вы разрабатываете приложение на компьютере Windows, можно запустить его прямо на нем.If you're developing your app on a Windows PC, you can even run it on that. Все эти возможности встроены в Visual Studio в составе расширения "Инструменты Visual Studio для Apache Cordova".All of these options are built into Visual Studio as part of the Visual Studio Tools for Apache Cordova.

Шаблоны проектов для создания приложений на универсальной платформе Windows (UWP) по-прежнему доступны в Visual Studio, и вы можете свободно использовать их, если планируете ориентироваться только на устройства Windows.Project templates for creating Universal Windows Platform (UWP) apps are still available in Visual Studio so feel free to use them if you plan to target only Windows devices. Если впоследствии вы решите перейти к устройствам Android и iOS, то всегда сможете перенести свой код в проект Cordova.If you decide to target Android and iOS later, you can always port your code to a Cordova project.

Дополнительные сведенияLearn more
Установка Visual Studio (VisualStudio.com)Install Visual Studio (VisualStudio.com)
Начало работы со средствами Visual Studio для Apache CordovaGet started with Visual Studio Tools for Apache Cordova
Сведения об эмуляторе Visual Studio для Android (VisualStudio.com)Learn about the Visual Studio Emulator for Android (VisualStudio.com)

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

Используйте C++ чтобы создать приложение для Android, iOS и WindowsUse C++ to build for Android, iOS, and Windows

Сначала установите Visual Studio и рабочую нагрузку Разработка мобильных приложений на C++ .First, install Visual Studio and the Mobile Development with C++ workload. Затем вы сможете создать приложение Native Activity для Android, Windows или iOS.Then, you can build a native activity application for Android, or an app that targets Windows or iOS. Одно и то же решение можно ориентировать на устройства Android, iOS и Windows, а затем наладить совместное использование кода между ними с помощью общей кроссплатформенной статической или динамической библиотеки.You can target Android, iOS, and Windows in the same solution if you want, and then share code between them by using a cross-platform static or dynamic shared library.

Если вам нужно создать приложение для Android, требующее сложных операций с графикой (например, игру), можно воспользоваться C++.If you need to build an app for Android that requires any sort of advanced graphics manipulation, such as a game, you can use C++ to do it. Начните с проекта Native Activity (Android) .Start with the Native Activity Application (Android) project. В этом проекте реализована полная поддержка цепочки инструментов Clang.This project has full support for the Clang toolchain.

Шаблон проекта Native ActivityNative activity project template

Для запуска готового приложения и оценки его интерфейса воспользуйтесь Android Emulator.When you're ready to run your app and see how it looks, use the Android Emulator. Это быстрый, надежный и простой в установке и настройке инструмент.It's fast, reliable, and easy to install and configure.

Вы можете создавать приложения, ориентированные на весь спектр устройств под управлением Windows 10, с помощью C++ и шаблона проекта приложения универсальной платформы Windows (UWP).You can also build an app that targets the full breadth of Windows 10 devices by using C++ and a Universal Windows Platform (UWP) app project template. Дополнительные сведения см. в разделе Целевые устройства Windows 10 ранее в этой статье.Read more about this in the Target Windows 10 devices section that appears earlier in this topic.

С помощью статической или динамической общей библиотеки вы сможете совместно использовать код С++ между устройствами Android, iOS и Windows.You can share C++ code between Android, iOS, and Windows by creating a static or dynamic shared library.

Статические и динамические общие библиотекиStatic and dynamic shared libraries

Эту библиотеку можно использовать в проекте Windows, iOS или Android, как описано ранее в этом разделе.You can consume that library in a Windows, iOS, or Android project, like the ones described earlier in this section. Также ее можно использовать в приложении, созданном с помощью Xamarin, Java или любого другого языка, который позволяет вызывать функции в неуправляемой библиотеке DLL.You can also consume it in an app that you build by using Xamarin, Java, or any language that lets you invoke functions in an unmanaged DLL.

При написании кода в этих библиотеках можно использовать IntelliSense для просмотра собственных API платформ Android и Windows.As you write code in these libraries, you can use IntelliSense to explore the native APIs of the Android and Windows platforms. Эти проекты библиотеки полностью интегрированы с отладчиком Visual Studio, поэтому можно задавать точки останова, осуществлять пошаговое выполнение кода, находить и исправлять проблемы, используя расширенные возможности этого отладчика.These library projects are fully integrated with the Visual Studio debugger so you can set breakpoints, step through code, and find and fix issues by using all of the advanced features of the debugger.

Дополнительные сведенияLearn more
Загрузка Visual Studio (VisualStudio.com)Download Visual Studio (VisualStudio.com)
Установка Visual C++ для разработки кроссплатформенных мобильных приложений на языке C++Install cross-platform mobile development with C++
Дополнительные сведения об использовании C++ для настройки для нескольких платформ (VisualStudio.com)Learn more about using C++ to target multiple platforms (VisualStudio.com)
Установка нужных компонентов и создание нативного приложения С++ для AndroidInstall what you need, and then create a C++ native activity application for Android
Дополнительные сведения о совместном использовании кода C++ с приложениями Android и Windows (VisualStudio.com)Learn more about sharing C++ code with Android and Windows apps (VisualStudio.com)
Примеры разработки кроссплатформенных мобильных приложений для C++Cross-platform mobile development examples for C++

Создание кросс-платформенной игры для устройств Android, iOS и Windows с использованием инструментов Visual Studio для UnityBuild a cross-platform game for Android, iOS, and Windows by using Visual Studio tools for Unity

Инструменты Visual Studio для Unity представляют собой бесплатное расширение Visual Studio, которое интегрирует мощные функции редактирования кода, повышения продуктивности и средства отладки в составе Visual Studio с Unity, популярной кроссплатформенной системой и средой разработки для игр и мощных графических приложений на платформах Windows, iOS, Android и других платформах, включая веб-приложения.Visual Studio Tools for Unity is a free extension for Visual Studio that integrates Visual Studio's powerful code editing, productivity, and debugging tools with Unity, the popular cross-platform gaming/graphics engine and development environment for immersive apps that target Windows, iOS, Android, and other platforms including the web.

Среда разработки VSTUVSTU development environment

Средства Visual Studio для Unity (VSTU) позволяют использовать Visual Studio для создания сценариев игр и редакторов на языке C#, а затем использовать его мощный отладчик для поиска и исправления ошибок.With Visual Studio Tools for Unity (VSTU), you can use Visual Studio to write game and editor scripts in C# and then use its powerful debugger to find and fix errors. В последнем выпуске VSTU реализована поддержка Unity 2018.1, включена цветовая маркировка синтаксиса для языка шейдера ShaderLab системы Unity, усовершенствована синхронизация с Unity, добавлены дополнительные функции отладки и улучшены механизмы создания кода благодаря использованию мастера MonoBehavior.The latest release of VSTU brings support for Unity 2018.1 and includes syntax coloring for Unity's ShaderLab shader language, better synchronization with Unity, richer debugging, and improved code generation for the MonoBehavior wizard. VSTU также объединяет файлы проекта Unity, сообщения консоли и возможность запускать игру в Visual Studio, чтобы тратить меньше времени на переключение в редактор Unity Editor и из него при написании кода.VSTU also brings your Unity project files, console messages, and the ability to start your game into Visual Studio so you can spend less time switching to and from the Unity Editor while writing code.

Дополнительные сведенияLearn more
Дополнительные сведения о построении игр Unity с помощью Visual StudioLearn more about building Unity games with Visual Studio
Подробнее об инструментах Visual Studio для UnityRead more about Visual Studio Tools for Unity
Начало работы с инструментами Visual Studio для UnityStart using Visual Studio Tools for Unity
Читать о последних возможностях Visual Studio Tools для предварительной версии Unity 2.0 (блог Visual Studio)Read about the latest enhancements to the Visual Studio Tools for Unity 2.0 Preview (Visual Studio blog)
Смотреть видео с введением в Visual Studio Tools для предварительной версии Unity 2.0 (видео)Watch a video introduction to the Visual Studio Tools for Unity 2.0 Preview (Video)
Сведения о Unity (веб-сайт Unity)Learn about Unity (Unity website)

См. такжеSee also