Visual Studio 2017 для Mac

Last Update: 01.09.2017

В этой статье содержатся сведения о новейшем выпуске Visual Studio 2017 для Mac версии 7.1.

Используйте Visual Studio 2017 для Mac для создания мобильных, облачных и веб-приложений с помощью Xamarin и .NET Core, а также для создания игр с помощью Unity.

Download Visual Studio 2017 for Mac

Дополнительные сведения о связанных скачиваемых файлах см. на странице Загрузки. Дополнительные сведения о Visual Studio 2017 для Mac см. в статьях Требования к системе Mac и Целевая платформа и совместимость для Mac.

Отзывы

Мы будем рады узнать ваше мнение! Вы можете сообщить о проблемах, щелкнув пункт Сообщить о проблеме в установщике или непосредственно в интегрированной среде разработки Visual Studio. Он находится в правом верхнем углу окна. Отслеживать свои отзывы можно на портале сообщества разработчиков. Свои предложения отправляйте через сайт UserVoice.

Дата выпуска: 14 августа 2017 г. — Visual Studio 2017 для Mac 7.1.0.1297

В этом выпуске основное внимание уделено исправлению ошибок и представлению следующих новых функций.

  • Поддержка создания приложений с помощью .NET Core 2.0.
  • Обновления рабочего процесса подписывания iOS.

Поддержка .NET Core 2

Visual Studio для Mac поддерживает создание приложений .NET Core 2.0, включая библиотеки, консольные приложения, а также веб-приложений и служб с помощью ASP.NET Core.

Обратите внимание, что пакет SDK для .NET Core 2.0 нужно устанавливать с использованием отдельной загрузки, чтобы получить возможность разработки приложений .NET Core 2.0 в Visual Studio 2017 для Mac версии 7.1. Он доступен на веб-сайте www.dot.net/core. Visual Studio поддерживает одновременное использование нескольких пакетов SDK для .NET Core. Это также означает, что вы можете экспериментировать с новейшими ежедневными сборками пакета SDK для .NET Core, при этом продолжая разработку с использованием последних общедоступных выпусков.

Обновления рабочего процесса подписывания iOS

В этом выпуске появилась возможность создавать требуемые артефакты подписывания для приложений iOS и tvOS. В Visual Studio для Mac можно:

  • создавать удостоверения подписывания и устанавливать их в локальную цепочку ключей;
  • создавать профили подготовки;
  • добавлять новое удостоверение подписывания в существующий профиль;
  • подготавливать новые устройства: регистрировать устройства на портале разработчика Apple и добавлять их в профиль подготовки.

Чтобы опробовать эти новые возможности подписывания, щелкните правой кнопкой мыши проект и выберите Параметры > Подписывание пакета iOS.

Использование раздела "Удостоверение подписывания"

Перед подписыванием необходимо выполнить следующие условия.

  • На портале разработчиков Apple в разделе "Сертификаты" отображается допустимый (не отозванный) сертификат.
  • Сертификат выдан выбранной группе или разработчику.
  • Сертификат и закрытый ключ должны быть установлены в локальной цепочке ключей.
  • Сертификат не должен быть просрочен.

Если удостоверения недоступны на текущем компьютере, используйте элемент Создать удостоверение подписывания в раскрывающемся списке.

Использование раздела "Профиль подготовки"

Для отображения в раскрывающемся списке "Профиль подготовки" профиль должен удовлетворять следующим условиям.

  • Срок действия не истек.
  • Допустимый (включает зарегистрированные устройства и допустимые сертификаты).
  • Соответствует текущему типу распространения ("Отладка" или "Выпуск" — согласно параметрам в верхней части).
  • Совпадает идентификатор пакета. В этом списке также будут отображаться профили символов подстановки, соответствующие шаблону.

Если не найдено ни одного профиля, используйте элемент Создать профиль подготовки раскрывающегося списка.

Чтобы вернуться к предыдущей версии элементов управления подписывания и вручную задать профиль подготовки и удостоверение подписывания, задайте для команды значение Нет. Новые элементы управления подписывания будут заменены старыми. Но настоятельно рекомендуется попробовать новые возможности и в случае возникновения проблем отправить нам отзыв.

Ограничения

  • Профили подготовки, созданные в Visual Studio для Mac, не будут учитывать объемы обслуживания, выбранные в проектах (Entitlements.plist). Эта возможность будет добавлена в будущих версиях интегрированной среды разработки.
  • Распространение профилей подготовки будет по умолчанию предназначено для магазина приложений. Собственные или специализированные профили необходимо создавать вручную.

Исправления в этом выпуске

Диспетчер Android SDK

  • Диспетчер Android SDK Manager теперь интегрирован в Visual Studio Preferences и не является внешним приложением.
  • Исправлено. Диспетчер Android SDK Manager показывает неверное состояние компонента после прерванной установки.
  • Исправлено. Инструменты SDK для Android установлены, но не выбраны при наличии доступного обновления, что может привести к непреднамеренному удалению компонента.
  • Исправлено. Расположение пакета SDK для Android по умолчанию не сохраняется, если не были внесены изменения компонента SDK.

Улучшения производительности

  • Улучшена производительность открытия, отображения документа и ввода в него данных.
  • Оптимизирована фоновая работа во время ввода.
  • Улучшено время открытия решения.
  • Оптимизирована загрузка результатов строки поиска.
  • Оптимизировано много правил анализа источника.
  • Оптимизирован код низкого уровня работы пользовательского интерфейса.
  • Исправлены ошибки, приводящие к увеличению использования памяти интегрированной среды разработки.
  • Оптимизированы процессы завершения кода, вывода подсказок по параметрам, семантического выделения.
  • Оптимизировано расширение папок расширения в области решения — заметно при использовании папок, содержащих сотни элементов.
  • Оптимизировано время первого и последующих запусков интегрированной среды разработки.
  • В общем оптимизировано использование ЦП и трафика памяти для использования интегрированной среды разработки.

Другие усовершенствования

  • Улучшен. Мы обновили службу удостоверений для использования в системах за прокси-сервером. Это позволит получать или запрашивать сведения о проверке подлинности из цепочки ключей. Если возникают проблемы со входом, повторите попытку и отправьте нам отзыв, чтобы мы смогли улучшить поддержку прокси-серверов.
  • Исправлено. Приоритет ограничения отображает 0 в области свойств. Нельзя задать значение во всплывающем окне конструктора.
  • Исправлено. Добавлена возможность указания целевой платформы для проектов F#.
  • Исправлено. Код неиспользуемых пространств имен некорректно обрабатывает пространства имен FSharp.Core.
  • Исправлено. Не локализовано много диалоговых окон и строк по созданию файлов.
  • Исправлено. Не локализованы диалоговые окна по созданию решений.
  • Исправлено. В диалоговом окне "Настройка нового приложения с одним представлением" усекается текст.
  • Исправлено. В подсказке мастера Nuget отображается ссылку на символ XML "'".
  • Исправлено. Подсказка средства обновления пуста во время приостановки обновлений.
  • Исправлено. Обновление репозитория git в VSTS завершается ошибкой "Имя пользователя или пароль имеет значение NULL".
  • Исправлено. Неправильный рефакторинг при первом использовании сценария "nameof".
  • Исправлено. При наличии множества последних проектов на странице приветствия теряются недавние проекты.
  • Исправлено. Возникает ошибка сборки iOS, если для приложения контейнера включены сборки для конкретного устройства, тогда как для расширения этого не сделано.
  • Исправлено. Выделение синтаксиса не работает с интерполяцией строк C#6 для локальных переменных.
  • Исправлено. В некоторых случаях пользователи не могут запустить Xamarin Inspector.
  • Исправлено. Получение предупреждений при построении собственного приложения (и iOS) в режиме выпуска.
  • Исправлено. Библиотека классов .NET Core предназначена для .NET Standard вместо netcoreapp.
  • Исправлено. IDE аварийно завершает работу при добавлении изображения (в формате PNG или JPG) в раскадровку iOS.
  • Исправлено. Добавление всех пакетов службы Google Play завершается выводом сообщения: "System.AggregateException: Произошла одна или несколько ошибок. ---> System.ArgumentNullException: Значение не может быть NULL. Имя параметра: packageIdentity.Version".
  • Исправлено. Контекстное меню "Быстрое исправление" зависает на сообщении "Загрузка...".
  • Исправлено. Браузер файлов не отображает расположение пакета SDK при нажатии кнопки "..." параметра обозревателя файлов на вкладке "Расположения" диспетчера Android SDK.
  • Исправлено. Проекты .NET Core F # не компилируются.
  • Исправлено. При входе в учетную запись Майкрософт запрашиваются учетные данные для доступа к прокси-серверу graph.windows.net.
  • Исправлено. Взаимоблокировка в разделах "Поиск ссылок" и "Поиск производных типов" для некоторых проектов F#.
  • Исправлено ошибка: Исключение с пустой ссылкой при попытке добавить новую учетную запись iOS в Visual Studio для Mac.
  • Исправлен. Добавление проекта .NET Standard в существующую структуру решения или проекта перезаписывает или переформатирует весь исходный код на диске.
  • Удаляет требование к установке конкретной версии .NET Core (предварительной версии 2) для использования .NET Core 2.0. Теперь поддерживаются более поздние предварительные версии и .NET Core RTW.

Дата выпуска: 02 июня 2017 г. — Visual Studio для Mac 7.0.1.24

В этом выпуске устранен ряд ошибок и проблем, связанных с утечкой памяти.

Диспетчер Android SDK

  • Исправлено. Лицензия SDK неправильно выполняет упаковку.
  • Исправлено. Кнопка "Отмена" не меняет надпись на "Установить обновления".
  • Исправлено. При удалении последней сборки пакета инструментов SDK удаляются все инструменты SDK.
  • Исправлено. Возможность изменять компоненты во время выполнения обновлений.
  • Исправлено. Не удается использовать скачанный пакет инструментов SDK из автономного установщика из-за проблем с разрешениями.
  • Исправлено. Не удается установить ранее удаленный компонент.
  • Исправлено. Не удается установить пакет инструментов SDK 25.2.5.

Другие проблемы

  • Исправлено. Проблема с восстановлением документов с параллельно расположенными окнами документов.
  • Исправлено. Имя "InitializeComponent" не существует в текущем контексте с переносимой библиотекой .NETStandard или библиотекой нового формата csproj.
  • Исправлено. Развертывание Android автоматически завершается сбоем в режиме выпуска.
  • Исправлено. Функция быстрого исправления не выполняет никаких действий.
  • Исправлено. Удаление ссылки в диалоговом окне "Изменение ссылок" не работает.
  • Исправлено. Отправка приложения PCL iOS Forms в Test Cloud завершается ошибкой сборки "Неизвестная ошибка MSBuild".
  • Исправлено. Не удается проверить переменные в приложениях .NET Core.
  • Исправлено. Команды отладки F# отображаются во всех файлах.
  • Исправлено. Шаблон F# Xamarin Forms не восстанавливает пакеты.
  • Исправлено. Стек вызовов исчезает после выбора потока во время отладки приложения .NET Core.
  • Исправлено. При нажатии и удержании клавиш SHIFT и СТРЕЛКА ВНИЗ продолжается выделение текста за пределами окна просмотра.
  • Исправлено. Блокировка пользовательского интерфейса во время восстановления пакетов.
  • Исправлено. Редактор не отображает весь текст.
  • Исправлено. Проблема упорядочения открываемых файлов после загрузки решения при использовании событий Apple для открытия файлов.
  • Исправлено. Переименование файла для соответствия имени класса, удалившего файл.
  • Исправлено. Обработчик завершения FooButton_Clicked не создает заглушку метода.
  • Исправлено. Разделение экрана приводит к отключению пунктов меню.

Новые возможности Visual Studio для Mac

Основные функции

Visual Studio для Mac содержит все компоненты и возможности, характерные для современной интегрированной среды разработки, включая полнофункциональный редактор исходного кода, функции поиска в коде и навигации по коду, мощный отладчик, настраиваемую рабочую область, интеграцию с Git и обширную систему расширений.

В число других функций входят указанные далее:

  • основанная на Roslyn технология C# IntelliSense, рефакторинг, анализаторы и исправления кода;
  • управление пакетами NuGet;
  • формат проектов, совместимый с Visual Studio;
  • система сборки MSBuild;
  • интегрированное модульное тестирование;
  • встроенная поддержка языка F#.

Поддержка .NET Core

.NET Core — это платформа для создания приложений, которые можно запускать в ОС Windows, Linux и Mac. Visual Studio для Mac обеспечивает поддержку операций загрузки, создания, запуска и отладки проектов .NET Core.

Для запуска проектов .NET Core следует скачать и установить пакет SDK для .NET Core.

.NET Core поддерживает указанные далее компоненты.

  • C# и F # IntelliSense.
  • Шаблоны проектов .NET Core для консоли, библиотеки и веб-приложений.
  • Полная поддержка отладки, включая точки останова, стек вызовов, окно контрольных значений и т. д.
  • Восстановление NuGet PackageReferences и восстановление на основе MSBuild.
  • Встроенная поддержка модульного тестирования для запуска и отладки тестов на платформе тестирования Visual Studio, которая входит в состав пакета SDK для .NET Core.
  • Переход со старого формата project.json.

Веб-инструменты

В Visual Studio для Mac добавлена поддержка новых веб-инструментов для файлов HTML, CSS и JSON.

HTML

  • Новый шаблон HTML.
  • Улучшены функции интеллектуального отступа и форматирования.
  • Усовершенствована раскраска.
  • Усовершенствования IntelliSense.
  • Свертывание кода (функция должна быть включена).
  • Команда отмены уменьшения.
  • Улучшенные шаблоны кода (фрагменты).
  • Размещение выделения в <div>.
  • Параметр "Вверх или вниз" перемещает выделенный текст вверх или вниз.

CSS

  • Улучшены функции интеллектуального отступа и форматирования.
  • Усовершенствована раскраска.
  • Усовершенствования IntelliSense.
  • Свертывание кода.
  • Множество шаблонов кода (фрагментов).
  • Параметр "Вверх или вниз" перемещает выделенный текст вверх или вниз.

JSON

  • Средство выбора схемы с доступом к schemastore.org.
  • Проверка из схемы.
  • IntelliSense из схемы.
  • Улучшены функции интеллектуального отступа и форматирования.
  • Усовершенствована раскраска.
  • Добавление и удаление комментариев.
  • Внедрение цитат и согласование скобок.
  • Параметр "Вверх или вниз" перемещает выделенный текст вверх или вниз.

Xamarin

Первоклассная поддержка Xamarin позволяет разрабатывать эффективные собственные интерфейсы для Android, macOS, iOS, tvOS и watchOS. Кроссплатформенные приложения Xamarin.Forms позволяют использовать код пользовательского интерфейса на основе XAML в Android, iOS и macOS без ограничения доступ к встроенной функциональности.

В том числе следующее:

  • Сборка, развертывание, отладка и профилирование.
  • Перетаскивание конструкторов пользовательского интерфейса для iOS и Android.
  • Динамический просмотр для Xamarin Forms.
  • Платформа, совместимая с .NET Standard.
  • Привязки к собственным API.

Многоплатформенные шаблоны приложений

Многоплатформенные шаблоны проектов для приложений Xamarin.Forms и собственных приложений теперь позволяют быстро создавать многоплатформенное мобильное приложение и его облачный сервер.

Эти шаблоны позволяют создавать несколько проектов: проект приложений Xamarin.iOS и проект приложений Xamarin.Android, которые совместно используют код с помощью общего проекта, и проект веб-API .NET Core, реализующий серверную службу для приложений (рис. 1).

Debugging with .NET Core

(рис. 1) Отладка с помощью .NET Core

Публикация веб-приложений ASP.NET Core в службы приложений Azure

Можно опубликовать веб-приложения ASP.NET Core в службы приложений Azure (рис. 2).

Publish to Azure content menu

(рис. 2) Меню публикации в Azure

Чтобы опубликовать веб-приложение, выберите команды Опубликовать | Опубликовать в Azure в панели решения или в меню Проект. Затем выберите службу приложений, в которую нужно выполнить развертывание, или создайте новую службу приложений Azure (рис. 3). Выходные данные публикации будут записаны в панели выходных данных Публикация, а профиль публикации будет создан в разделе Свойства > Профили публикации в проекте.

Publish a new app service

(рис. 3) Публикация новой службы приложений

Все профили публикации, определенные в проекте, будут отображаться в виде параметров в меню Публикация, что позволяет осуществлять повторное развертывание без выбора службы приложений еще раз.

Отладка нескольких процессов

В проектах есть конфигурации запуска проектов, указывающие параметры и аргументы для запуска проекта. С помощью раскрывающегося списка на панели инструментов можно просматривать и изменять текущую активную конфигурацию запуска.

В окне Конфигурации запуска решений в Visual Studio для Mac можно запускать несколько проектов одновременно. Конфигурации запуска решений создаются в диалоговом окне Параметры решения. Это очень полезно для отладки взаимодействия мобильного приложения с серверной службой.

Пакеты TextMate

Visual Studio для Mac обеспечивает поддержку языковых пакетов TextMate, которые можно использовать для добавления следующих компонентов:

  • цветовые темы редактора;
  • фрагменты кода;
  • грамматики для новых языков, включение выделения и базовые функции IntelliSense.

Чтобы добавить пакеты TextMate, последовательно выберите Настройки > Текстовый редактор > Языковые пакеты.

iOS

Мастер Audio Unit

Новый мастер расширения Audio Unit (рис. 4) добавляет три параметра для настройки файла plist шаблона проекта Audio Unit.

  • Тип Audio Unit
    • Инструменты
    • Generator
    • Действие
    • Музыкальный эффект
  • Код подтипа: должен состоять точно из 4 символов.
  • Код изготовителя: должен состоять точно из 4 символов.

Audio Unit Wizard

(рис. 4) Мастер Audio Unit

Мастер расширений watchOS

В Xcode 8.3 Apple представила расширения watchOS (аналогичные iOS), начиная с расширения Intents (Siri).

Мастер расширений watchOS (рис. 5) был обновлен для поддержки расширений watchOS, и теперь у нас есть специальный шаблон расширения Intents.

watchOS extension wizard

(рис. 5) Мастер расширений watchOS

Другие улучшения и исправления ошибок
  • Теперь атрибуты Deprecated и Obsoleted обрабатываются в окне автозавершения. Это позволяет отображать устаревшие API-интерфейсы Xamarin.iOS как зачеркнутые.
  • При развертывании на устройстве отображается индикатор хода выполнения. Это особенно полезно для watchOS. (Требуется Xamarin.iOS 10.5.0.323+) .
  • Мы используем известные версии ОС из Xamarin.iOS для заполнения раскрывающихся списков целевых объектов развертывания.
    Это обеспечивает два преимущества: можно предоставить точный минимальный номер версии для каждого типа расширений приложений, а также избежать отображения версий ОС на основе Xcode, который Xamarin.iOS пока не поддерживает.

Анализатор проблем с API Mac или iOS

  • Устранен повторяющийся маркер при запуске анализатора.
  • Теперь можно получать "сообщение" (часть информации в структуре, объясняющее, почему API-интерфейс является устаревшим и нерекомендуемым) из атрибута и добавлять эти сведения в различные сообщения о доступности.
  • Обновлены все сообщения о доступности для повышения ясности.
  • Внесена большая ясность с помощью имени символа в сообщении о доступности с изменением с:
    API Usage Issue: this API requires iOS 10.0 or later
    на:
    'MyMethod' is only available on iOS 10.0 or newer

Android

  • Новый диспетчер SDK

В состав Visual Studio для Mac включен собственный диспетчер Android SDK (рис. 6).

Android SDK Manager window

(рис. 6) Диспетчер Android SDK

  • Развертывание проекта на устройстве или в эмуляторе теперь осуществляется с помощью целевого объекта msbuild /t:Install. Ранее в Visual Studio для Mac использовалась собственная внутренняя логика для развертывания приложений на устройствах, а теперь продукт использует те же общие целевые объекты, доступные из терминала или те, которые используются в Visual Studio в Windows. Одним из преимуществ этого изменения является наличие более эффективных журналов для диагностики проблем развертывания.

  • class-parse теперь используется по умолчанию для новых проектов привязки. Анализ байт-код Java выполняется напрямую без необходимости использования виртуальной машины Java. Теперь вы можете извлекать имена параметров из байт-кода Java, который содержит отладочные символы. Например, байт-код, скомпилированный с использованием javac -g. class-parse также не пропускает классы, которые наследуются от членов неразрешимых типов или содержат их.

Специальные возможности

  • Эта версия Visual Studio для Mac включает в себя поддержку вспомогательных технологий, таких как Voice Over. С помощью них стали доступны многие элементы пользовательского интерфейса, например редактор и обозреватель решений. Но работа еще не завершена, поэтому в ближайшие выпуски будут вноситься дальнейшие улучшения. Функции специальных возможностей можно включить с помощью настроек Специальные возможности или путем ввода в командной строке следующей команды:

    defaults write com.microsoft.visual-studio com.monodevelop.AccessibilityEnabled 1

    К началу страницы