JetBrains Rider – это среда разработки (IDE), которая поддерживает создание и работу с проектами Xamarin, ориентированных на устройства Android и/или iOS. Rider Xamarin позволяет использовать функции анализа кода, помощь в кодировании, рефакторинга и отладки, встроенные инструменты, такие как контроль версий и клиент NuGet, а также развертывать и отлаживать приложения на эмулированных или реальных устройствах.
Если другие инструменты, на которые опирается Xamarin (например, Android SDK, эмулятор Android), настроены правильно, вы сможете создавать и запускать приложения Xamarin прямо из IDE JetBrains Rider.
Xamarin SDK
Для разработки приложений Xamarin необходимо, чтобы пакет Xamarin SDK был установлен на вашей машине. Существует два различных Xamarin SDK - для iOS/Mac и для Android.
Xamarin SDK состоит из двух частей:
- Сборки с типами .NET для целевой платформы. Например, тип .NET для представления базового объекта OSX NSObject. Используя эти сборки, IDE и компилятор разрешают и собирают пользовательский код.
- Инструменты, преобразующие проекты .NET в нативные приложения, которые могут быть развернуты и выполнены на эмуляторе или физическом устройстве. Например, с помощью этих инструментов создаются пакеты .apk для Android.
JetBrains Xamarin SDK
JetBrains Rider может использовать различные диспетчеры пакетов Xamarin SDK, например, SDK от Visual Studio. Однако если на вашей машине не установлен Visual Studio, вы можете использовать JetBrains Xamarin SDK.
JetBrains Xamarin SDK – это кастомная сборка исходников Xamarin на GitHub с некоторыми улучшениями и дополнительным кодом.
JetBrains Xamarin SDK доступен для Windows и macOS:
Windows
Для Windows доступны две сборки JetBrains Xamarin SDK, предназначенные для следующих платформ:
Платформа Apple (iOS, Mac, tvOS, watchOS)
JetBrains Xamarin SDK для разработки iOS предоставляет ограниченный набор функций на Windows. Например, в настоящее время он не поддерживает подключение к удаленному Mac и выполнение полной сборки/развертывания.
JetBrains Xamarin SDK для платформ Apple под Windows поставляется в виде .zip-файла (~ 60 Мб) и устанавливается в каталог JetBrains MsBuild:
%LOCALAPPDATA%\JetBrains\BuildTools
Android
JetBrains Xamarin SDK для разработки Android предоставляет солидный набор функций. Однако быстрое развертывание в настоящее время не поддерживается.
JetBrains Xamarin SDK для платформ Android под Windows поставляется в виде .zip-файла (~ 700 Мб) и устанавливается в каталог JetBrains MsBuild:
%LOCALAPPDATA%\JetBrains\BuildTools
macOS
На macOS доступны две сборки JetBrains Xamarin SDK, предназначенные для следующих платформ:
Платформа Apple (iOS, Mac, tvOS, watchOS)
На macOS JetBrains Xamarin SDK для платформ Apple предоставляет практически тот же набор функций, что и Visual Studio SDK, поддерживаются все известные сценарии.
JetBrains Xamarin SDK для разработки под iOS на macOS поставляется в виде файла .dmg (~ 700 Мб) и устанавливается в:
- /Library/Frameworks/Xamarin.iOS.framework
- /Library/Frameworks/Xamarin.Mac.framework
- /Library/Frameworks/Mono.framework/External
Android
JetBrains Xamarin SDK для разработки Android предоставляет солидный набор функций. Однако быстрое развертывание в настоящее время не поддерживается.
JetBrains Xamarin SDK для разработки Android на macOS поставляется в виде файла .dmg (~ 700 Мб) и устанавливается в:
- /Library/Frameworks/Xamarin.Android.framework
- /Library/Frameworks/Mono.framework/External
Перед началом работы
Xamarin предназначен для использования на различных платформах, поэтому разработка Xamarin опирается на несколько различных инструментов для создания и запуска приложений.
Windows
На Windows вы можете разрабатывать приложения Xamarin для любой платформы, но локальная сборка и запуск/отладка ограничены устройствами и эмуляторами Android.
Если вы используете Visual Studio Xamarin SDK, вы сможете собрать и запустить свое приложение на iOS и macOS. Для этого настройте Mac-агент, доступный в сети, а затем подключитесь к нему (Инструменты | iOS | Xamarin Mac Agent).
1. Установите Xamarin SDK для iOS на свою машину одним из следующих способов:
- Установите Xamarin в Visual Studio. Обратите внимание, что вы можете использовать Visual Studio Community, который является бесплатным. Если у вас уже установлена Visual Studio, вам необходимо добавить в нее поддержку Xamarin.
- Запустите установку Xamarin iOS & Mac на странице Environment в настройках JetBrains Rider Ctrl+Alt+S и следуйте указаниям мастера установки. Таким образом, JetBrains Rider автоматически загрузит и установит JetBrains Xamarin SDK для iOS & Mac.
- В качестве альтернативы вы можете клонировать репозиторий Xamarin с открытым исходным кодом с GitHub, собрать его и установить на машину. Этот способ довольно сложен, и мы не рекомендуем его использовать.
2. Установите средства разработки Android одним из следующих способов:
- Запустите установку Xamarin Android на странице Environment в настройках JetBrains Rider Ctrl+Alt+S и следуйте указаниям мастера установки. Таким образом, JetBrains Rider автоматически загрузит и установит JetBrains Xamarin SDK для Android.
- В качестве альтернативы, все компоненты, которые автоматически устанавливаются на странице Environment в настройках JetBrains Rider Ctrl+Alt+S, можно также установить вручную:
- Rider Xamarin Android Support plugin. В нем есть все необходимые функции, например, менеджер Android SDK.
- Android SDK разработан и предоставляется компанией Google. Вы можете установить его из Visual Studio, Android Studio, Rider (с плагином Rider Xamarin Android Support) или загрузить в виде набора инструментов командной строки.
- Java SE Development Kit (JDK)
macOS
На macOS вы можете разрабатывать, создавать и запускать полностью кроссплатформенные приложения Xamarin.
1. Установите Xamarin SDK на свой компьютер одним из следующих способов:
- Установите Visual Studio для Mac.
- Запустите установку Xamarin iOS & Mac на странице Environment в настройках JetBrains Rider Ctrl+Alt+S и следуйте указаниям мастера установки. Таким образом, JetBrains Rider автоматически загрузит и установит JetBrains Xamarin SDK для iOS & Mac.
- В качестве альтернативы вы можете клонировать репозиторий Xamarin с открытым исходным кодом с GitHub, собрать его и установить на машину. Этот способ довольно сложен, и мы не рекомендуем его использовать.
2. Для разработки под iOS и Mac установите Xcode. Для установки и входа в Xcode вам понадобится Apple ID. Если у вас его еще нет, вы можете создать новый на сайте https://appleid.apple.com. JetBrains Rider обнаружит Xcode автоматически. Если у вас несколько версий Xcode, вы можете выбрать, какую из них использовать на странице Build, Execution, Deployment | iOS настроек JetBrains Rider Ctrl+Alt+S.
3. Установите средства разработки Android одним из следующих способов:
- Запустите установку Xamarin Android на странице Environment в настройках JetBrains Rider Ctrl+Alt+S и следуйте указаниям мастера установки. Таким образом, JetBrains Rider автоматически загрузит и установит JetBrains Xamarin SDK для Android.
- В качестве альтернативы, все компоненты, которые автоматически устанавливаются на странице Environment в настройках JetBrains Rider Ctrl+Alt+S, можно также установить вручную:
- Rider Xamarin Android Support plugin. В нем есть все необходимые функции, например, менеджер Android SDK.
- Android SDK разработан и предоставляется компанией Google. Вы можете установить его из Visual Studio, Android Studio, Rider (с плагином Rider Xamarin Android Support) или загрузить в виде набора инструментов командной строки.
- Java SE Development Kit (JDK)
Вы можете проверить статус инструментов Xamarin, установить или обновить их на странице Environment в настройках JetBrains Rider Ctrl+Alt+S:
Создание и открытие проектов Xamarin
JetBrains Rider поддерживает создание новых и работу с существующими проектами. Также доступны шаблоны проектов.
Вы можете создать новый проект Xamarin в новом решении с помощью команды File – New... или добавить новый проект Xamarin в существующее решение, щелкнув правой кнопкой мыши узел решения или папки решения в Solution Explorer и выбрав Add – New Project.
Интеграция Xcode на macOS
При разработке приложений Xamarin на macOS рекомендуется редактировать файлы ресурсов и подключать ресурсы к коду с помощью Xcode.
Вы можете использовать контекстные меню файлов .storyboard, .xib, .plist или узла проекта Xamarin macios, чтобы открыть их в Xcode.
Если файл или проект никогда ранее не открывался в Xcode, JetBrains Rider сгенерирует проект Xcode следующим образом:
- генерируется спецификация проекта xcodeproj (дескриптор проекта, аналогичный csproj, но для Xcode)
- генерируются исходные файлы для всех пользовательских типов, наследующих NSObject (формы, делегаты, представления, элементы управления и так далее) на Objective C
- копируются все ресурсы (изображения, файлы дизайнера)
Когда структура проекта будет готова, Xcode запустится автоматически, и вы сможете использовать его для редактирования ресурсов. Каждый раз, когда Rider получает фокус, он ищет изменения (правки в существующих файлах, новые файлы, удаленные файлы) и интегрирует эти изменения в проект Xamarin .NET. Он изменяет части .designer.cs пользовательских типов (унаследованные от NSObject) и копирует обратно все измененные ресурсы.
Все события, связанные с Xcode, выводятся в окне инструмента консоли Xcode, которое появляется при открытии ресурсов или проектов в Xcode:
Как это работает
Когда вы создаете новый проект Xamarin macios.
- JetBrains Rider создает соответствующий проект xcodeproj (pbxproj и другие необходимые файлы) в подкаталоге obj\xcode со всеми необходимыми настройками и конфигурациями.
- Копии всех файлов содержимого (представления, plist-файлы, изображения и так далее) создаются в этом каталоге.
- Для каждого типа ViewController JetBrains Rider генерирует класс objc с действиями и выходами.
- Сгенерированный проект автоматически открывается в Xcode.
Когда вы внесли изменения в Xcode, а затем переключились на Rider
- Все измененные файлы содержимого копируются обратно в проект .NET.
- Настройки обновляются.
- Файлы objc анализируются, а файлы *.designer.cs регенерируются для контроллеров представления. Для всех этих файлов вы увидите сгенерированный заголовок:
// WARNING // // This file has been generated automatically by Rider IDE // to store outlets and actions made in Xcode. // If it is removed, they will be lost. // Manual changes to this file may not be handled correctly.
Запуск и отладка приложений Xamarin
Когда вы создаете или открываете проект Xamarin, JetBrains Rider автоматически создает конфигурации запуска/отладки для каждого проекта Xamarin в решении.
Если вы хотите что-то изменить в способе запуска и выполнения приложения, вы можете редактировать и создавать новые конфигурации запуска/отладки. Когда вы запускаете приложение Xamarin из среды IDE, вы можете использовать соответствующий селектор на панели навигации, чтобы выбрать, какая конфигурация должна быть использована:
Отладка проекта Xamarin, который не был создан с помощью JetBrains Rider
- Нажмите Ctrl+Alt+S, чтобы открыть настройки IDE, и выберите Environment.
- Включите поддержку Xamarin Android и Xamarin iOS & Mac. Если вы работаете под Windows и у вас установлен Xamarin SDK через Visual Studio, он будет обнаружен автоматически. В противном случае JetBrains Rider предложит установить JetBrains Xamarin SDK.
Примечание. JetBrains Xamarin SDK не может быть установлен вместе с Visual Studio Xamarin SDK.
- После установки Xamarin SDK вы можете создать конфигурации запуска/отладки, специфичные для Xamarin.
- Откройте диалог Run/Debug Configuration одним из следующих способов:
- Выберите Run | Edit Configurations в главном меню.
- При видимой панели навигации (View | Appearance | Navigation Bar) выберите Edit Configurations в селекторе конфигураций запуска/отладки.
- Нажмите Ctrl+Alt+Shift+R, а затем нажмите 0.
- В открывшемся диалоге Run/Debug Configuration нажмите Ctrl+N или нажмите Add, затем выберите Xamarin.Android, Xamarin.iOS или Xamarin.Mac из списка.
- При необходимости укажите целевой проект и другие параметры, затем нажмите OK.
- Используйте созданную конфигурацию для запуска и отладки проекта Xamarin.