{"id":46683,"date":"2020-04-08T10:46:49","date_gmt":"2020-04-08T17:46:49","guid":{"rendered":"http:\/\/devblogs.microsoft.com\/xamarin\/?p=46683"},"modified":"2020-04-08T10:46:49","modified_gmt":"2020-04-08T17:46:49","slug":"mac-version-8-5-vs19","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/xamarin\/mac-version-8-5-vs19\/","title":{"rendered":"What&#8217;s New for Xamarin Developers in Visual Studio 2019 for Mac version 8.5"},"content":{"rendered":"<p>This week, Visual Studio 2019 for Mac version 8.5 was released! Which brings several new features and improvements for mobile developers in Visual Studio for Mac to help you build better mobile apps, faster.<\/p>\n<h2>Visual Studio 2019 for Mac version 8.5<\/h2>\n<p>In this release, you will find:<\/p>\n<ul>\n<li><b>Multi-Target Reload for XAML Hot Reload<\/b>: Reload changes made to XAML instantly on multiple targets at the same time for rapid UI iteration. Such as an iOS Simulator and Android emulator.<\/li>\n<li><b>Android Apply Changes<\/b>: Quickly see changes made to Android resource files on an Android device or emulator without requiring the application to be restarted. Including changes to layouts, drawables, etc.,<\/li>\n<li><b>Faster Android Startup<\/b>: Generate custom profiles using startup tracing in your Android applications. This provides improved application start-up with minimal increase in app size.<\/li>\n<li><b>XAML Document Outline<\/b>: See the hierarchy of your Xamarin.Forms UI in the &#8220;Document Outline&#8221; pane.<\/li>\n<li><b>Improved Xcode Storyboard Designer Integration<\/b>: Add the ability to set your default iOS designer in Visual Studio for Mac. Which enables the use of tools that make you most productive for authoring iOS UIs.<\/li>\n<li><b>XAML Previewer Opt-Out<\/b>: Prefer runtime tooling over visual tooling when building Xamarin.Forms apps? Disable the XAML Previewer in the Xamarin settings in Tools > Options.<\/li>\n<\/ul>\n<div class=\"row justify-content-center\"><a class=\"cta_button_link\" style=\"text-transform: titlecase; display: inline-block; background-color: #0078d4; color: white; padding: 10px; margin: 10px 0; text-decoration: none;\" href=\"https:\/\/visualstudio.microsoft.com\/vs\/mac\/\" target=\"_blank\" rel=\"noopener noreferrer\">Install Visual Studio for Mac version 8.5<\/a><\/div>\n<p>&nbsp;<\/p>\n<h3>Multi-Target Reload for XAML Hot Reload<\/h3>\n<p>XAML Hot Reload for Xamarin.Forms speeds up your development and makes it easier to build, experiment, and iterate on user interfaces. This means no longer having to rebuild your app each time you tweak your UI. Instead, it instantly reflects those changes in your running app!<\/p>\n<p><a href=\"https:\/\/developercommunity.visualstudio.com\/idea\/699571\/allow-hotreload-on-multiple-devicesemulators-at-th.html\" target=\"_blank\" rel=\"noopener noreferrer\">You shared<\/a> a need to see changes made to your XAML reloaded instantaneously on multiple targets &#8211; such as an iOS simulator and Android emulator &#8211; at the same time. This release adds to the capability to reload XAML on multiple targets at the same time:<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-46263\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/multi.2020-01-17-15_29_52.gif\" alt=\"GIF displaying multi-target reloading in XAML Hot Reload for Xamarin.Forms in Visual Studio 2019 for Mac version 8.5\" width=\"730\" height=\"398\" \/><\/p>\n<p>To use multi-target reload for XAML Hot Reload, create a <a href=\"https:\/\/docs.microsoft.com\/en-us\/visualstudio\/mac\/configurations?view=vsmac-2019#run-configuration\" target=\"_blank\" rel=\"noopener noreferrer\">run configuration<\/a> in Visual Studio for Mac for the targets you would like to debug and reload at the same time.<\/p>\n<h3>Android Apply Changes<\/h3>\n<p>In our effort to examine how we can make Android developers more productive, we looked at the most common edit types. After discussion with developers, like you, we found that Android resources, as well as layouts and drawables, made up a significant portion of edits. In this release, we are introducing support for Android Apply Changes. This enables you to make resource changes at runtime without having to restart your application &#8211; even during a debug session.<\/p>\n<p><center>\n<iframe width=\"700\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/bjsfvZQQ68w?controls=0\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/center><\/p>\n<h3>Android Start-Up Performance<\/h3>\n<p>In a previous release, a feature known as <a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/faster-startup-times-with-startup-tracing-on-android\/\" target=\"_blank\" rel=\"noopener noreferrer\">startup tracing<\/a> was included. In which you use a default profile to improve the startup performance of your Android applications with a minimal increase to APK size.<\/p>\n<p>This release includes MSBuild support for custom profiles within startup tracing. Now, you can record your own custom profile based on your application\u2019s needs at startup time. The generated profile can then be used instead of a default profile. Resulting in improved startup performance to an additional 40%, with a minimal increase to your APK size. For example, here is a table below against the Smart Hotel 360 sample application:<\/p>\n<table style=\"height: 81px; width: 100%; border-collapse: collapse;\">\n<tbody>\n<tr style=\"height: 27px;\">\n<th style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\"><\/th>\n<th style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">Release<\/th>\n<th style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">+ AOT<\/th>\n<th style=\"width: 17%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">+ Start-Up Tracing<\/th>\n<th style=\"width: 19%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">+ Custom Start-Up Tracing<\/th>\n<\/tr>\n<tr style=\"height: 27px;\">\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">Activity Displayed<\/td>\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">4863ms<\/td>\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">2086ms<\/td>\n<td style=\"width: 17%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">3655ms<\/td>\n<td style=\"width: 19%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">1900ms<\/td>\n<\/tr>\n<tr style=\"height: 27px;\">\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">APK Size<\/td>\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">48MB<\/td>\n<td style=\"width: 16.6667%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">95MB<\/td>\n<td style=\"width: 17%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">57MB<\/td>\n<td style=\"width: 19%; height: 27px; border: 1px solid #dddddd; padding: 8px;\">60MB<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;\nGet started with custom startup tracing by following the <a href=\"https:\/\/github.com\/xamarin\/xamarin-android\/blob\/master\/Documentation\/guides\/profiling.md#profiling-the-aot-compiler\" target=\"_blank\" rel=\"noopener noreferrer\">start-up tracing documentation<\/a>.<\/p>\n<h3>XAML Document Outline<\/h3>\n<p>Xamarin.Forms developers already have access to a plethora of tooling to help build UIs faster. UIs such as <a href=\"http:\/\/aka.ms\/xamlhotreloaddocs\" target=\"_blank\" rel=\"noopener noreferrer\">XAML Hot Reload<\/a>, control toolbox, and property panel. In addition to a powerful editing experience with IntelliSense. Our goal is to provide a delightful mix of design-time (such as toolbox, property panel, editor) and run-time (such as XAML Hot Reload) tooling to make building Xamarin.Forms UIs productive.<\/p>\n<p>The Visual Studio 2019 for Mac version 8.5 release brings the Visual Studio Document Outline feature to XAML, enabling you to see a hierarchy of your Xamarin.Forms UI in the Document Outline pane:<\/p>\n<p><center><img decoding=\"async\" class=\"aligncenter size-large wp-image-46270\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/DocumentOutline-1024x751.png\" alt=\"XAML Document Outline in Visual Studio for Mac.\" width=\"640\" height=\"469\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/DocumentOutline-1024x751.png 1024w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/DocumentOutline-300x220.png 300w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/DocumentOutline-768x563.png 768w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/DocumentOutline.png 1487w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/center>\n<br>\nOpen the document outline via <b>View<\/b> &gt; <b>Pads<\/b> &gt; <b>Document Outline<\/b>.<\/p>\n<h3>Improved Xcode Storyboard Designer Integration<\/h3>\n<p>In numerous conversations with developers building iOS apps with Xamarin, we heard that developers building native iOS applications either prefer to author their UIs in C# or utilize the Xcode storyboard designer over the provided designer in Visual Studio for Mac.<\/p>\n<p>Driven by feedback provided by you, we are adding the ability to set your default iOS designer in Visual Studio for Mac. Now enabling you to use the tools that make you most productive. Changes made in the Xcode storyboard designer will be synchronized back to Visual Studio for Mac automatically. Rather than waiting for new features to be implemented in the Xamarin iOS designer, enable your UIs to take full advantage of the latest-and-greatest in iOS immediately!<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-medium wp-image-46260\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/image-1-300x75.png\" alt=\"Visual Studio 2019 for Mac version 8.5 Preview 2 enables you to select the iOS Storyboard Designer you prefer.\" width=\"600\" height=\"150\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/image-1-300x75.png 300w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/image-1-1024x255.png 1024w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/image-1-768x191.png 768w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2020\/01\/image-1.png 1246w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/>\n&nbsp;<\/p>\n<h3>XAML Previewer for Xamarin.Forms<\/h3>\n<p>We heard feedback that you need a lightweight XAML editor experience, especially when coding on-the-go. To help you streamline your development environment, turn off the XAML Previewer by changing your \u201cDefault XAML Editor\u201d in <strong>Tools<\/strong> > <strong>Options <\/strong>> <strong>Xamarin <\/strong>> <strong>Xamarin.Forms XAML Previewer<\/strong>. <\/p>\n<h2>More From Visual Studio 2019 for Mac version 8.5!<\/h2>\n<p>That is just a small peek at what is available in Visual Studio 2019 for Mac version 8.5. It also includes smaller additions, such as bug and performance fixes. As well as updates to the project templates to feature CollectionView, in addition to improved editing for Android XML constructs. For a complete overview of all that is available, browse the <a href=\"https:\/\/docs.microsoft.com\/en-us\/visualstudio\/releases\/2019\/release-notes\" target=\"_blank\" rel=\"noopener noreferrer\">release notes<\/a>.<\/p>\n<p>Our roadmap is directly driven by your feedback. Which means Visual Studio 2019 for Mac is full of features that were inspired by YOU! From XAML Hot Reload to faster Android build and deployment times. Make your voice heard by filing bug reports or sharing feature suggestions on <a href=\"https:\/\/developercommunity.visualstudio.com\/spaces\/8\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">Developer Community<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Visual Studio 2019 for Mac version 8.5 was released! Which brings several new features and improvements for mobile developers in Visual Studio for Mac to help you build better mobile apps, faster.<\/p>\n","protected":false},"author":546,"featured_media":46263,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[362,6602,1,291,7745],"tags":[5,6255,5843,5841],"class_list":["post-46683","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-macos","category-visual-studio","category-xamarin","category-xamarin-platform","category-xaml","tag-android","tag-hot-reload","tag-visual-studio-for-mac","tag-xaml"],"acf":[],"blog_post_summary":"<p>Visual Studio 2019 for Mac version 8.5 was released! Which brings several new features and improvements for mobile developers in Visual Studio for Mac to help you build better mobile apps, faster.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/46683","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/users\/546"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/comments?post=46683"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/46683\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media\/46263"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media?parent=46683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/categories?post=46683"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/tags?post=46683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}