Академический Документы
Профессиональный Документы
Культура Документы
Cross-Platform Mobile Development With CPP
Cross-Platform Mobile Development With CPP
Вы можете создавать собственные приложения на языке C++ для iOS, Android и Windows устройств,
используя кроссплатформенные инструменты, доступные в Visual Studio. Разработка мобильных
приложений на языке C++ — это рабочая нагрузка, доступная в программе установки Visual Studio. Она
устанавливает пакеты SDK и средства, необходимые для кроссплатформенной разработки общих библиотек
и собственных приложений. После ее установки язык C++ можно использовать для создания кода,
выполняющегося на устройствах и платформах с iOS и Android, Windows, Windows Store, и Xbox.
Написание кода для различных платформ может часто быть утомительным. Основные языки и средства
разработки для iOS, Android и Windows для каждой платформы различны. Однако все платформы
поддерживают написание кода на языке C++. Это общий знаменатель, который обеспечивает
использование основной части кода на разных платформах. Машинный код, написанный на языке C++,
может быть более производительным и устойчивым к реконструированию. Повторное использование кода
позволяет сэкономить время и силы при создании приложений для разных платформ.
Использование языка C++ для разработки кроссплатформенных мобильных приложений имеет несколько
преимуществ.
Простая установка. Установщик Visual Studio получает и устанавливает средства и пакеты SDK
сторонних разработчиков, необходимые для создания приложений или библиотек для Android и iOS.
Установка и настройка просты и в основном производятся автоматически.
Эффективная и привычная среда сборки. Шаблоны Visual Studio позволяют легко создавать
общие кроссплатформенные решения и проекты. Управлять свойствами для всех проектов можно с
помощью единого интерфейса. Редактируйте весь код в редакторе Visual Studio и используйте
встроенную кроссплатформенную функцию IntelliSense для автозавершения и выделения ошибок.
Получить инструменты
Разработка мобильных приложений с помощью C++ — это устанавливаемая рабочая нагрузка,
поставляемая с Visual Studio. Сведения о необходимых компонентах и инструкции по установке см. в статье
Установка Visual C++ для разработки кроссплатформенных мобильных приложений на языке C++. Для
создания кода для iOS также требуются компьютер Mac и учетная запись разработчика Apple iOS.
Дополнительные сведения см. в статье Установка и настройка средств для разработки с помощью iOS.
Создает полнофункциональное приложение C++ OpenGL в форме проекта Android Native Activity.
Создает решение с набором проектов для приложения Android Native Activity и приложения iOS. Эти
приложения используют библиотеки для конкретных платформ, созданные с помощью общего кода
C++ OpenGL ES, с целью отрисовки одинакового вращающегося куба.
Общая библиотека (Android, iOS)
Создает проект приложения Hello, World для Android, в котором используется только исходный код
Java и система сборки Ant.
Простое приложение (Android, Gradle)
Создает проект приложения Hello, World для Android, в котором используется только исходный код
Java и система сборки Gradle.
Простая библиотека (Android, Ant)
Создает проект библиотеки Hello, World для Android, в котором используется только исходный код
Java и система сборки Ant.
Простая библиотека (Android, Gradle)
Создает проект библиотеки Hello, World для Android, в котором используется только исходный код
Java и система сборки Gradle.
Динамическая общая библиотека (Android)
Создает решение с набором проектов для сборки приложения iOS OpenGL ES 2. Приложение
использует библиотеку кода C++ OpenGL ES для рисования вращающегося куба в приложении iOS.
Это приложение может стать хорошей отправной точкой для ознакомления с импортом библиотек
C++ в приложение iOS.
Статическая библиотека (Android)
Создает проект для сборки статической библиотеки для Android. Приложение Android может быть
связано только с одной динамической библиотекой, но с любым количеством статических библиотек.
Создает оболочку проекта для ваших собственных проектов Android, использующих файл makefile.
Испытайте образец кода
Скачайте образцы, демонстрирующие создание библиотек общего кода, которые можно использовать в
приложениях Windows, Android и iOS. См. примеры создания готовых приложений для Android. Чтобы
приступить к работе, см. раздел Примеры разработки кроссплатформенных мобильных приложений.
В Visual Studio C++ можно использовать для создания классических приложений Windows, приложений
универсальная платформа Windows (UWP) и приложений Linux. Теперь вы можете создавать C++
приложения для Android и iOS. Разработка мобильных приложений с C++ рабочей нагрузкой — это
устанавливаемый набор компонентов в Visual Studio. Он включает в себя межплатформенные шаблоны
iOS, Android и UWP Visual Studio. Рабочая нагрузка устанавливает кросс-платформенные средства и
пакеты SDK, необходимые для быстрого начала работы. Вам не придется самостоятельно определять,
скачивать и настраивать их. С помощью этих средств в Visual Studio можно быстро создавать,
редактировать, отлаживать и тестировать кроссплатформенные проекты.
Требования
Требования для установки семейства продуктов Visual Studio см. в этой статье.
IMPORTANT
Если вы используете Windows 7 или Windows Server 2008 R2, вы можете писать код для классических
приложений для Windows, приложений и библиотек Android Native Activity, а также приложений и
библиотек кода для iOS, но не для Windows Store и приложений UWP.
Требования для установки семейства продуктов Visual Studio см. в этой статье.
IMPORTANT
Если вы используете Windows 7 или Windows Server 2008 R2, вы можете писать код для классических
приложений Windows, приложений и библиотек Android Native Activity, а также приложений и библиотек
кода для iOS, но не для приложений Windows Phone и UWP.
Эмуляторы Android x86, которые поставляются с пакетом SDK для Android, лучше всего работают на
компьютерах, которые могут использовать аппаратное ускорение, таких как Intel Hardware
Accelerated Execution Manager (HAXM). Дополнительные сведения см. в статье Аппаратное
ускорение для производительной работы эмулятора (Hyper-V и HAXM).
Создание кода для iOS требует наличия Apple ID, учетной записи программы для разработчиков iOS
и компьютера Mac, на котором может выполняться Xcode версии 10.2 или выше в OS X Mavericks
(версии 10.9) или более поздней. Ссылку на инструкции по установке см. в разделе Установка
инструментов для iOS.
Эмуляторам Windows Phone требуется компьютер, на котором можно запускать Hyper-V. Чтобы
установить и запустить эмуляторы, в Windows должен быть включен компонент Hyper-V.
Дополнительные сведения см. в разделе Системные требования эмулятора.
Получить инструменты
Рабочая нагрузка "Разработка мобильных приложений на языке C++" доступна в выпусках Visual Studio
Community, Professional и Enterprise. Чтобы получить Visual Studio, перейдите на страницу скачиваемых
файлов этого продукта. Средства разработки кроссплатформенных мобильных приложений доступны в
Visual Studio 2015 и последующих версиях.
Установка инструментов
Visual Studio Installer содержит рабочую нагрузку Разработка мобильных приложений на C++ . Эта
рабочая нагрузка устанавливает инструменты языка C++, шаблоны и компоненты, необходимые для
разработки Android и iOS в Visual Studio. Он включает наборы инструментов GCC и Clang, необходимые
для сборок и отладки Android. Рабочая нагрузка устанавливает пакет SDK для Android и компоненты для
взаимодействия с компьютером Mac для разработки с iOS. Он также устанавливает сторонние средства и
пакеты средств разработки программного обеспечения, необходимые для поддержки разработки
приложений iOS и Android. В основном это программное обеспечение с открытым исходным кодом,
необходимое для поддержки платформы Android.
Для построения C++ кода, ориентированного на платформу Android, необходимы нативный пакет
средств разработки для Android (NDK), Apache Ant и инструменты разработки C++ Android.
Эмулятор Google Android и Intel Hardware Accelerated Execution Manager (HAXM) являются
дополнительными, но рекомендуемыми компонентами. (Драйверы Intel HAXM работают только на
процессорах Intel и несовместимы с некоторыми виртуальными машинами, включая Hyper-V.) Вы
можете разрабатывать и выполнять отладку непосредственно на устройстве Android, но для
отладки часто бывает проще использовать эмулятор на рабочем столе.
Инструменты разработки C++ iOS необходимы для создания кода C++, ориентированного на
платформу iOS.
NOTE
Если вы используете Visual Studio 2015, см. статью Установка Visual C++ для разработки кроссплатформенных
мобильных приложений на языке C++.
3. Выберите вкладку Рабочие нагрузки, прокрутите вниз, а затем в установщике Visual Studio
Installer выберите рабочую нагрузку Разработка мобильных приложений на языке C++ .
При выборе этой рабочей нагрузки также выбираются другие необходимые компоненты для
разработки на языке C++. Ви можете также установить другие рабочие нагрузки и отдельные
компоненты. Чтобы создать кроссплатформенный код, который также ориентирован на
приложения UWP, выберите рабочую нагрузку Разработка приложений для универсальной
платформы Windows .
6. Нажмите кнопку Изменить или Установить, чтобы установить рабочую нагрузку Разработка
мобильных приложений на языке C++ и другие выбранные рабочие нагрузки и
дополнительные компоненты.
IMPORTANT
Перезагрузка необходима для того, чтобы проверить, все ли установлено правильно.
Вы можете снова запустить приложение диспетчера пакетов SDK в каталоге пакет SDK для Android, чтобы
обновить пакет SDK. И, чтобы установить дополнительные средства и дополнительные уровни API. Если
запустить диспетчер пакетов SDK, не используя команду Запуск от имени администратора ,
обновления могут не установиться. Если при сборке приложений Android возникают проблемы, проверьте
наличие обновлений для установленных пакетов SDK в диспетчере пакетов SDK.
Чтобы использовать некоторые эмуляторы пакет SDK для Android, может потребоваться настроить
аппаратное ускорение. Дополнительные сведения см. в статье Аппаратное ускорение для
производительной работы эмулятора (Hyper-V и HAXM).
В большинстве случаев Visual Studio может обнаружить конфигурации для установленного стороннего
программного обеспечения. Пути установки сохраняются во внутренних переменных среды. Вы можете
переопределить пути по умолчанию для этих средств разработки кроссплатформенных приложений в
интегрированной среде разработки Visual Studio.
NOTE
Сведения об использовании размещенных в облаке служб Mac вместо компьютера Mac см. в разделе Настройка
подключения Visual Studio к размещенному в облаке компьютеру Mac. Приведенные инструкции предназначены
для разработки с помощью инструментов Visual Studio для Apache Cordova. Чтобы использовать инструкции для
сборки с помощью С ++, замените vcremote на remotebuild .
После установки инструментов для сборки с помощью iOS, обратитесь к этой статье, чтобы получить
дополнительные сведения о способах быстрой настройки и обновления удаленного агента для
разработки iOS в Visual Studio и на вашем Mac.
предварительные требования
Для установки и использования удаленного агента с целью разработки кода для iOS необходимы
следующие компоненты:
Компьютер Mac с операционной системой macOS Mojave (версии 10.14) или более поздней версии.
xcode-select --install
Учетная запись Apple ID, настроенная в Xcode, как удостоверение для подписи приложений.
Чтобы просмотреть или задать удостоверение подписывания в Xcode, откройте меню Xcode и
выберите пункт Preferences (Настройки). Щелкните Accounts (Учетные записи), выберите свой
идентификатор Apple ID, а затем нажмите кнопку View Details (Просмотреть подробности). См.
подробные инструкции в разделе Добавление вашей учетной записи Apple ID.
Подробные сведения о требованиях для подписывания см. в разделе Что такое подписывание
приложений.
Профиль подготовки, настроенный в Xcode для вашего устройства, если для разработки вы
используете устройство с iOS.
node -v
В ходе установки будет установлен vcremote , а на компьютере Mac будет активирован режим
разработчика. Также будут установлены Homebrew и два пакета npm, vcremote-lib и
vcremote-utils . После завершения установки можно игнорировать любые предупреждения о
пропущенных необязательных зависимостях.
NOTE
Для установки Homebrew требуется доступ sudo (права администратора). Если вам нужно установить
vcremote без доступа "sudo", вы можете установить Homebrew вручную в папку "usr/local" и добавить
папку "bin" в ваш путь. Дополнительную информацию см. в документации по Homebrew. Чтобы
включить режим разработчика вручную, введите в приложении "Терминал" следующую команду :
DevToolsSecurity -enable
Если Visual Studio обновляется до новой версии, то также необходимо обновить удаленный агент до
текущей версии. Чтобы обновить удаленный агент , еще раз выполните инструкции по его скачиванию и
установке.
vcremote
При первом запуске агента, и каждый раз, когда вы создаете новый сертификат клиента, вам
предоставляется необходимая информация для настройки агента в Visual Studio, включая имя узла, порт
и PIN-код.
Если вы намерены настроить удаленный агент в Visual Studio, используя имя узла, выполните проверку
связи с компьютером Mac из Windows, используя это имя узла, чтобы убедиться в том, что он доступен. В
противном случае может потребоваться использовать вместо имени узла IP-адрес.
Созданный ПИН-код является одноразовым и действителен в течение ограниченного срока. Если не
выполнить сопряжение Visual Studio с удаленным агентом до истечения его срока действия, потребуется
создать новый ПИН-код. Для получения дополнительной информации см. Generate a new security PIN.
После запуска удаленного агента его можно использовать из Visual Studio, пока он не будет остановлен.
Остановка удаленного агента
В окне приложения "Терминал", в котором выполняется vcremote , введите Control +C .
NOTE
Если не удается проверить связь с компьютером Mac, используя имя узла, возможно, потребуется
использовать IP-адрес.
8. Обновите имя папки в поле Удаленный корневой элемент , указав папку, используемую
удаленным агентом, в домашнем каталоге ( ~ ) на компьютере Mac. По умолчанию удаленный
агент использует /Users/<username>/vcremote в качестве удаленного корневого элемента.
Удаленный агент создаст новый временный ПИН-код. Для сопряжения Visual Studio с помощью
нового ПИН-кода повторно выполните инструкции, приведенные в разделе Настройка удаленного
агента в Visual Studio.
Создание нового сертификата сервера
В целях безопасности сертификаты серверов, которые сопрягают Visual Studio с удаленным агентом,
привязаны к имени узла или IP-адресу компьютера Mac. Если эти значения меняются, вам потребуется
создать новый сертификат сервера, а затем изменить конфигурацию Visual Studio, используя новые
значения.
5. Для сопряжения Visual Studio с помощью нового ПИН-кода повторно выполните инструкции,
приведенные в разделе Настройка удаленного агента в Visual Studio.
vcremote --help
Чтобы отключить безопасный режим и включить обычные подключения на основе HTTP, введите
следующую команду:
В этом случае снимите флажок Безопасный и оставьте поле ПИН- код пустым при настройке
агента в Visual Studio.
Чтобы указать расположение для файлов удаленного агента, введите следующую команду:
Здесь путь_к_каталогу — это расположение на компьютере Mac, где будут храниться файлы
журналов, сборки и сертификаты серверов. По умолчанию, это расположение
/Users/<username>/vcremote . В этой папке сборки упорядочиваются по номеру сборки.
Для использования фонового процесса с целью записи stdout и stderr в файл server.log введите
следующую команду:
Для запуска агента с помощью файла конфигурации, а не параметров командной строки, введите
следующую команду:
ideviceinstaller -l
Если ideviceinstaller сообщает , что доступа к папке /var/db/lockdown нет , измените права папки:
Требования
Прежде чем создавать приложение Android Native Activity, необходимо убедиться, что вы выполнили все
системные требования и установили рабочую нагрузку Разработка мобильных приложений на
языке C++ в Visual Studio. Дополнительные сведения см. в статье Установка Visual C++ для разработки
кроссплатформенных мобильных приложений на языке C++. Убедитесь, что необходимые сторонние
инструменты и пакеты SDK включены в установку, а также что установлен эмулятор Android.
4. Нажмите F5 , чтобы начать отладку, или Shift +F5 для запуска без отладки.
Вот как выглядит приложение по умолчанию в эмуляторе Android.
Visual Studio запускает эмулятор, который за несколько секунд загружает и развертывает код. После
запуска приложения можно задать точки останова и использовать отладчик для проверки кода,
языковых стандартов и контрольных значений.
Вы можете создавать решения Visual Studio и проекты для приложений iOS и Android с общим кодом. В
этой статье описывается комбинированный шаблон решения. Он создает приложение iOS и приложение
Android Native Activity. Приложения имеют общий код C++, который использует технологию OpenGL ES для
отображения одинакового анимированного вращающегося куба на обеих платформах. OpenGL ES (OpenGL
для встраиваемых систем или ГЛЕС ) — это API двухмерной и трехмерной графики. Он поддерживается на
многих мобильных устройствах.
Требования
Соблюдайте все требования к системе для создания приложения OpenGL ES для iOS и Android. Установите
рабочую нагрузку разработки мобильных приложений на языке C++ в Visual Studio Installer, если еще не
сделали этого. Для получения шаблонов OpenGL ES, а также для создания приложения для iOS, включите
дополнительные инструменты разработки C++ для iOS. Чтобы выполнить сборку для Android, установите
C++ средства разработки Android и необходимые сторонние инструменты: Android NDK, Apache Ant и
Google Android Emulator.
Для повышения производительности эмулятора на платформах Intel один из вариантов — установить Intel
Hardware Accelerated Execution Manager (HAXM). Подробные инструкции см. в статье Установка кросс-
платформенной разработки C++мобильных приложений с помощью .
Для сборки и тестирования приложения iOS потребуется компьютер Mac. Настройте его в соответствии с
инструкциями по установке. Дополнительные сведения о настройке компьютера для разработки
приложений iOS см. в разделе Установка и настройка средств для разработки с помощью iOS.
Новое решение приложения OpenGL ES включает в себя три проекта библиотек и два проекта
приложений. Папка библиотеки содержит проект общего кода. И два проекта для конкретной платформы,
которые ссылаются на общий код:
Используйте 32-разрядную платформу (x86) в качестве целевой для эмулятора. Чтобы выполнить
сборку для устройства, выберите платформу решения, соответствующую процессору устройства.
Если список Платформы решения не отображается, щелкните пункт Платформы решения в
списке Добавить или удалить кнопки и выберите свою платформу.
В окне "Выходные данные" отображаются выходные данные процесса сборки для общей библиотеки
Android и приложения Android.
3. Выберите один из профилей эмулируемого устройства Android в качестве цели развертывания.
Возможно, вы установили другие эмуляторы или подключили устройство Android. Их можно выбрать
в раскрывающемся списке цель развертывания. Для запуска приложения платформа решения сборки
должна совпадать с платформой целевого устройства.
4. Нажмите F5 , чтобы начать отладку, или Shift +F5 для запуска без отладки.
Visual Studio запускает эмулятор, который за несколько секунд загружает и развертывает код. Так
выглядит экран приложения в эмуляторе Android:
После запуска приложения можно задать точки останова и использовать отладчик для проверки
кода, языковых стандартов и контрольных значений.
Созданные проекты приложения и библиотеки для собственных действий Android помещают C++
общий код в динамическую библиотеку. Он включает в себя "связующий" код для взаимодействия с
платформой Android. Большая часть кода приложения находится в библиотеке. Манифест , ресурсы и
инструкции по сборке находятся в проекте упаковки. Общий код вызывается из main.cpp в проекте
NativeActivity. Более подробную информацию о программировании Android Native Activity см. на
странице Concepts (Основные понятия) в Android Developer NDK.
Visual Studio создает проекты собственных действий Android с помощью пакета NDK для Android. В
нем используется Clang в качестве набора инструментов платформы. Visual Studio сопоставляет
свойства проекта с командами Compile, Link и Debug на целевой платформе. Чтобы получить
подробные сведения, откройте диалоговое окно Страницы свойств для проекта
MyOpenGLESApp.Android.NativeActivity. Более подробную информацию о параметрах командной
строки см. в руководстве пользователя компилятора Clang.
4. Добавьте свой идентификатор Apple ID, зарегистрированной в учетной записи программы для
разработчиков Apple, в Xcode. Ваш идентификатор Apple ID используется как удостоверение
подписывания приложений. Чтобы добавить удостоверение подписывания в Xcode, откройте меню
Xcode и выберите пункт Preferences (Настройки). Выберите Accounts (Учетные записи) и нажмите
кнопку добавления (+), чтобы добавить свой идентификатор Apple ID. См. подробные инструкции в
статье о добавлении учетной записи Apple ID.
7. Выберите имя команды для идентификатора Apple ID, которое вы задали для команды разработки.
Сборка и запуск приложения для iOS на устройстве iOS
1. Запустите удаленный агент на компьютере Mac и проверьте, сопряжена ли среда Visual Studio с
удаленным агентом. Чтобы запустить удаленный агент , откройте окно приложения "Терминал" и
введите vcremote . Более подробную информацию см. в разделе Настройка удаленного агента в
Visual Studio.
2. Подключите устройство iOS к компьютеру Mac. При первом подключении устройства к компьютеру
поступает оповещение с вопросом, является ли компьютер доверенным для получения доступа к
устройству. Укажите, что компьютер Mac является доверенным для устройства.
В окне Вывод отображаются выходные данные процесса сборки. В нем отображаются результаты
для статической библиотеки iOS и приложения iOS. На компьютере Mac в окне "Терминал", в
котором выполняется удаленный агент , отображается команда и действие передачи файлов.
Возможно, на компьютере Mac вам будет предложено разрешить средству подписывания кода
доступ к цепочке ключей. Чтобы продолжить, нажмите Разрешить.
8. Выберите свое устройство iOS на панели инструментов, чтобы запустить приложение на устройстве,
подключенном к компьютеру Mac. Если приложение не запускается, проверьте, предоставляет ли
устройство развернутому приложению разрешение на запуск. Чтобы предоставить это разрешение,
последовательно выберите на устройстве Параметры > Общие > Управления устройствами.
Выберите учетную запись для разработки приложений, сделайте ее доверенной и проверьте
приложение. Попытайтесь еще раз запустить приложение из Visual Studio.
После запуска приложения можно задать точки останова и использовать отладчик Visual Studio для
проверки локальных значений, стека вызовов и контрольных значений.
Настройка приложений
Вы можете изменить общий код C++, чтобы добавить или изменить общие функциональные возможности.
Измените вызовы к общему коду в проектах MyOpenGLESApp.Android.NativeActivity и
MyOpenGLESApp.iOS.Application , чтобы они совпадали. Для указания разделов общего кода, предназначенных
для конкретной платформы, можно использовать макросы препроцессора. При выполнении сборки для
Android предварительно определен макрос препроцессора __ANDROID__ . При выполнении сборки для iOS
предварительно определен макрос препроцессора __APPLE__ .
Проблемы, найденные IntelliSense в коде текущего проекта, подчеркиваются красной волнистой линией. В
других проектах возникает ошибка фиолетовой волнистой линии. Visual Studio не поддерживает
выделение кода цветом и технологию IntelliSense для файлов с кодом Java и Objective-C. Однако вы по-
прежнему можете изменять исходные файлы и ресурсы. Используйте их для задания имени приложения,
значка и других сведений о реализации.
minutes to read • Edit Online
Импорт из Xcode
1. В меню Файл выберите Новый документ , Импорт , Импорт из Xcode . Эта команда запускает
диалоговое окно мастера Импорт из мастера Xcode .
2. В панели Выбор проекта выберите кнопку "Обзор", чтобы выбрать файл Xcode .pbxproj. Перейдите
к файлу проекта в диалоговом окне Выбрать файл проекта Xcode , а затем выберите Открыть.
В мастере импорта из Xcode выберите Далее .
3. В области Целевые объекты назначения выберите целевые объекты в проекте Xcode, которые
будут импортированы в проекты Visual Studio. Целевые объекты Xcode аналогичны целевым объектам
в проектах Visual Studio; большинство из них представляют собой сочетание кода и ресурсов, которые
образуют двоичный файл. Мастер импорта из Xcode позволяет импортировать только те объекты,
которые производят двоичную библиотеку, а не статическую, в качестве объектов назначения.
Предметом следующего шага являются цели статических библиотек Xcode.
Для каждого целевого объекта, выбранного в разделе Целевые объекты для импорта , мастер
автоматически определяет файлы кода C++, которые можно выделить в отдельный проект
статической библиотеки, и помещает их в раздел Элементы проекта C++ . Другие коды и ресурсы
остаются в разделе Элементы проекта Xcode . После окончания импорта они станут отдельной
статической библиотекой и проектами приложения в Visual Studio. По умолчанию модульные тесты и
целевые объекты платформы не разбиваются на отдельные проекты.
Чтобы изменить файлы в каждом проекте воспользуйтесь кнопками со стрелками вверх и вниз. После
выбора файлов для каждого проекта нажмите кнопку Далее для продолжения.
С помощью проекта общего кода можно обмениваться файлами исходного кода между проектами в
Visual Studio. Сборка кода происходит в рамках проекта, в который он входит , а не в рамках
отдельного проекта. Проекты, которые содержат общий код, могут иметь различную архитектуру и
конфигурацию. Проект с общим кодом — это лучший способ создать единый проект , содержащий
код, который может быть собран для многих типов платформ.
После выбора файлов для каждого проекта нажмите кнопку Далее для продолжения.
5. Используйте панель Глобальные свойства , чтобы задать путь поиска платформы и путь поиска
включенного заголовка для всех iOS-проектов в Visual Studio. Visual Studio использует эти пути для
просмотра исходного кода и для IntelliSense. С помощью этих глобальных путей удобно создавать
проекты iOS, которые используют общий набор заголовков и платформ.
Эти глобальные пути также можно задать в Visual Studio в диалоговом окне Параметры. Чтобы их
найти, в меню Сервис выберите Параметры. В диалоговом окне Параметры разверните Кросс-
платформа > C+++ > iOS > Глобальные свойства .
6. Область Платформы используется для настройки путей, которые используются Visual Studio для
просмотра файлов и для IntelliSense. Visual Studio должны быть доступны пути для каждой
платформы, на которую ссылается ваш проект Xcode. Мастер проверяет ссылки на платформы в
проектах Xcode и отображает , может ли Visual Studio найти платформу. Все пути, которые уже были
настроены в окне Глобальные свойства, должны быть доступны для Visual Studio. Исключения
указаны в списке Платформы. Для каждой платформы, которая помечена символом "X", укажите путь
к платформе на компьютере Visual Studio. Для указания пути можно воспользоваться кнопкой "Обзор"
( ... ). Откроется окно Выбор папки. Можно указать путь к локальной копии платформы или путь к
сетевой папке на компьютере Mac.
Чтобы продолжить, нажмите кнопку Далее .
7. В области Параметры проекта можно изменить платформу и включить параметры путей поиска
заголовков для каждого проекта, создаваемого мастером. В этой области задаются пути для
определенного проекта, которые отличаются от глобальных параметров.
Чтобы задать путь для конкретного проекта, в раскрывающемся списке Конечный проект выберите
файл проекта. Затем установите значения в элементах управления Framework Search Path и
Include Header Search Path . Для указания пути можно воспользоваться кнопкой "Обзор" ( ... ) рядом
с каждым элементом управления. Откроется окно Выбор папки.
Если с этим компьютером не был связан удаленный компьютер Mac в Visual Studio, отображается
ссылка Настроить удаленный компьютер. Инструкции по настройке сопряжения см. в статье
Установка и настройка средств сборки для iOS.
Импорт с помощью мастера Xcode создает в Visual Studio проекты, соответствующие выбранным
целям проекта Xcode. Код, который можно использовать совместно с другими проектами C++,
выделяется в отдельные проекты общего кода и проекты статических библиотек. Оставшийся код
помещается в проекты библиотек и приложений iOS, сборку которых можно выполнить удаленно с
помощью Visual Studio. Дополнительные сведения о перемещении кода между Visual Studio и Xcode
см. в разделе Синхронизация изменений между Xcode и Visual Studio.
Мобильная разработка с компонентами C++ в Visual Studio включает в себя удаленные возможности для
синхронизации работы между ПК и Mac. Когда компьютеры с Visual Studio и Mac связаны, для проектов
приложений iOS в Visual Studio доступны новые возможности, позволяющие открыть проект в Xcode,
перемещать код между Xcode и Visual Studio и очистить временный каталог проекта Xcode.
Для использования возможностей удаленного компьютера проект должен быть проектом приложения iOS,
а система Visual Studio должна быть связана с Mac. Необходимые условия и инструкции по связыванию Mac
см. в разделе Установка и настройка средств для разработки с помощью iOS.
Открыть в Xcode
Чтобы открыть проект из Visual Studio в Xcode, в подменю Удаленный компьютер выберите Открыть в
Xcode для открытия выбранного проекта на связанном удаленном компьютере. Сервер vcremote
используется для открытия Xcode на компьютере Mac и перехода к временному каталогу, созданному на
компьютере Mac и содержащему копию проекта. Visual Studio выводит диалоговое окно с временным
каталогом для проекта. Действия, выполняемые на удаленном компьютере, также отображаются в окне
Вывод Visual Studio. Чтобы увидеть их, может потребоваться выбрать элемент Удаленный компьютер
Visual C++ в раскрывающемся списке Показать выходные данные из в верхней части окна Вывод .
На Mac вы можете использовать все инструменты Xcode для редактирования кода и ресурсов, раскадровок
и действий. В Visual Studio ваш проект приложения iOS сопровождается пометкой "Открыто в Xcode",
указывающей на возможность внесения изменений на удаленном компьютере. После внесения изменений
вы можете воспользоваться командой "Принудительное извлечение с удаленного компьютера" или
"Инкрементное принудительное извлечение с удаленного компьютера", чтобы скопировать их обратно в
проект Visual Studio.
Чтобы скопировать файлы проекта на Mac, в обозревателе решений Visual Studio щелкните проект
приложения iOS правой кнопкой мыши для открытия контекстного меню. Выберите пункт Удаленный
компьютер и затем команду Принудительная отправка на удаленный компьютер или
Инкрементная принудительная отправка на удаленный компьютер, чтобы скопировать файлы
проекта из Visual Studio на Mac.
Чтобы скопировать файлы проекта на Mac, в обозревателе решений Visual Studio щелкните проект
приложения iOS правой кнопкой мыши для открытия контекстного меню. Выберите пункт Удаленный
компьютер и затем команду Принудительное извлечение с удаленного компьютера или
Инкрементное принудительное извлечение с удаленного компьютера , чтобы скопировать
файлы проекта с Mac в Visual Studio.
Чтобы очистить временный каталог проекта на удаленном компьютере, в обозревателе решений Visual
Studio щелкните проект приложения iOS правой кнопкой мыши для открытия контекстного меню.
Выберите пункт Удаленный компьютер и команду Очистить удаленный компьютер, чтобы удалить
файлы в каталоге проекта с Mac.
minutes to read • Edit Online
Этот пример представляет собой приложение hello-jni, перенесенное из Android NDK. В нем
демонстрируется полностью готовое приложение Java Native Interface в стиле Hello World. Оно
загружает строку из собственного метода, реализованного в общей библиотеке, а затем выводит ее
на экран.
Этот пример представляет собой приложение hello-gl2, перенесенное из Android NDK. В нем
демонстрируется полностью готовое приложение Native Interface Android на основе OpenGL. В нем
отрисовывается треугольник с помощью API шейдеров OpenGL ES 2.0.
Этот пример представляет собой приложение Bitmap Plasma, перенесенное из Android NDK. В нем
демонстрируется полностью готовое приложение Java Native Interface для Android на основе OpenGL
ES 2.0. С его помощью показано, как напрямую работать с буферами растровых пикселей Android для
создания эффекта плазмы.
Этот пример представляет собой образец библиотеки TwoLibs, перенесенный из Android NDK. В нем
используется как динамически загружаемая общая библиотека, так и статическая собственная
библиотека Android на C++, которая реализует метод, вызываемый из приложения Java Native
Interface. Этот пример является хорошей отправной точкой, позволяющей разработчикам понять, как
использовать статические и динамические общие библиотеки для создания полностью готового
приложения JNI для Android с помощью Visual Studio.
Этот пример представляет собой приложение TeaPot, перенесенное из Android NDK. В нем
демонстрируется полностью готовое приложение Java Native Interface для Android на основе OpenGL
ES 2.0.
Пример приложения MoreTeaPots для Android
Этот пример представляет собой приложение MoreTeaPots, перенесенное из Android NDK. В нем
демонстрируется полностью готовое приложение Java Native Interface для Android на основе OpenGL.
Этот пример представляет собой образец библиотеки test-libstdc++, перенесенной из Android NDK и
предназначенной специально для использования с Visual Studio. Этот пример является хорошей
отправной точкой, позволяющей разработчикам понять, как использовать стандартную библиотеку.
Чтобы открыть один из примеров в Visual Studio, скачайте ZIP-файл и откройте страницу Свойства
этого файла в проводнике. Нажмите кнопку Разблокировать , а затем кнопку ОК. Извлеките
содержимое ZIP-файла в удобное место, откройте папку C++ в извлеченном образце, а затем
откройте файл решения.
Чтобы выполнить сборку образца, нажмите клавишу F7 или выберите в строке меню Сборка >
Собрать решение .
minutes to read • Edit Online
Тип отладчика Указывает тип кода для отладки. Только машинный код
Только Java
ABI с плавающей запятой Параметр для выбора ABI с Soft — при выборе "Soft" выходные
плавающей запятой. данные компилятора содержат
вызовы библиотек для операций с
плавающей запятой.
SoftFP — при выборе "SoftFP" код
создается с помощью аппаратных
инструкций с плавающей запятой,
однако при этом все еще
используются соглашения о вызове
soft-float.
Hard — при выборе "Hard"
разрешено создавать инструкции с
плавающей запятой и использовать
соглашения о вызовах для
конкретных FPU.
Командная строка для повторной сборки всех файлов Определяет командную строку , реализующую команду
"Перестроить все".
Путь поиска включаемых файлов Указывает путь для разрешения включаемых файлов.