Preview 6 – Visual Studio for Mac

We are releasing our sixth preview of Visual Studio for Mac. Visual Studio for Mac is an evolution of Xamarin Studio, and includes all the functionality of Xamarin Studio 6.3.

If you already have VS for Mac installed, this update will appear in any of the updater channels within the IDE. If you do not yet have a VS for Mac Preview, you can download this newer one here. Future updates will then be available to you through the VS for Mac “Check for Updates” menu option.

Please note that the VS for Mac IDE has its own set of updater channels, separate from Xamarin Studio and Xamarin.VS. As of Preview 6 and for all future Preview releases of VS for Mac, only an Alpha channel will appear. That channel provides the latest preview updates as they become available. When VS for Mac moves out of preview status, the available updater channels will be adjusted accordingly. It should be noted that since VS for Mac is still in preview, it is not yet a fully supported product.

Visual Studio for Mac can be installed side-by-side with Xamarin Studio.


Known Issues

    • 54993 – “The root assembly … conflicts with another assembly” build error will appear for Xamarin.iOS projects in Xamarin for Visual Studio 4.4.0 on Windows due to the incompatible Xamarin.iOS 10.10.0 Alpha version that is installed on the Mac by the latest Visual Studio for Mac Preview.
      • Please see the bug report for a few different options for how to resolve this issue.

Products Released

Alpha Release: 15.2 Alpha Preview 1

We are releasing the first Alpha preview of our next major release, called 15.2.

This initial Alpha release currently only includes updates for Mac and is not compatible with the existing Stable Xamarin version in Visual Studio on Windows. So for the moment please only try this Alpha version if you do all your development work on Mac. Keep an eye on this post for updates about the corresponding Windows updates soon.

Using the latest Visual Studio for Mac Preview 6 with this release is encouraged, but you can also continue to use Xamarin Studio if you prefer. If you are updating an earlier Visual Studio for Mac Preview, you’ll need to check for updates once to install Preview 6 and then once more to get the new Xamarin Platform components.

As this is an Alpha build, there are some known issues and the possibility of new issues being found during testing. Of course, additional bug reports are still welcome for these preview versions. If you see any suspicious behavior that you wish to report, please file a quick bug.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.

Please check out the product release notes to see all the fixes and known issues for this release.


Products Released


Installing the Alpha and switching back to Stable

You can install this new Alpha version or switch back to the current Stable version by changing updater channels.


Upcoming Release Dates

Alpha 1 – This Release!

Stable Release: 15.1

We are releasing the Stable build of our next major release, called 15.1 to the Alpha, Beta, and Stable channels.  The 15.1 release name follows the Microsoft VS release naming convention.

This release is now available in the Xamarin updater channels and as part of the April 5th update for Visual Studio 2017.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.


Known Issues

There are some known issues and the possibility of new issues being found. Additional bug reports are still welcome for this stable version. If you see any suspicious behavior that you wish to report, please file a quick bug.

Please check out the product release notes to see all the fixes and known issues for this release.

  • [Xamarin.VS]54465 – Object reference not set to an instance of an object when building Master Detail Forms Shared iOS project template.
    • The current workaround is to rebuild the solution again. Please stay tuned for resolution details.
  • [Xamarin Studio]53906 – Fastlane showing nothing from Apple subscriptions and not updating.
    • The team details dialog is empty. In certain scenarios signing identities and provisioning profiles are not displayed, even if they are installed and valid on the users machine. We will continue working on this issue, and expect to publish a fix into the Xamarin Alpha, Beta and Stable channels soon.

Products Released


Installing

You can get this latest version by checking for updates on the Stable updater channel and in Visual Studio 2017 by installing Visual Studio 2017 15.1 (26403.00).


Previous Versions

  • For Mac the previous versions are: Xamarin Studio 6.2.1.3, Xamarin.iOS 10.6.0.10, Xamarin.Android 7.2.0-7, and Xamarin Profiler 1.2.1.
  • For Windows the previous versions are: Xamarin.VisualStudio 4.3.0.795, Visual Studio 2017 15.0, Xamarin Studio 6.2.0.1829, and Xamarin Profiler 1.2.1.

Previous Xamarin versions can be found on the Xamarin account page as described in the article about older Xamarin versions. Previous versions of the Xamarin Profiler can be found in the Xamarin Profiler release notes. Previous versions of Visual Studio 2017 can be found on My.VisualStudio.com as described in the article about older Visual Studio versions.


Upcoming Release Dates

Alpha 1 – March 1st 2017

Alpha 2 – March 7th 2017

Beta 1 – March 16th 2017

Beta 2 – March 27th 2017

Stable – This Release!

Stable Release: Xamarin.Forms 2.3.4.224

We’ve pushed Xamarin.Forms 2.3.4.224 to NuGet.

Important notes

  • Behavior Change (iOS): ViewDidDisappear may not be reliably called in custom renderers. Please be sure to override Dispose to do any object cleanup that you may be doing in ViewDidDisappear to prevent any possible memory leaks in your custom renderers. (53351)
  • Behavior Change (UWP): Desktop is now a supported Idiom, so your UWP apps will return this value on desktop contexts. Please be aware that Phone will still be returned in continuum scenarios.
  • Behavior Change: Merged ResourceDictionaries will now return a Count that is consistent with the content in the enumeration instead of the total Count of Resources.
  • Breaking Change: Attached Properties are now compiled when XamlC is enabled! If you have XamlC enabled, you must implement a public getter/setter for all attached properties to prevent a compile time error.

2.3.4.221-pre6

  • [iOS] Prevent NRE when page is switched on Appearing (PR)
  • [A]Fix potential crash when calling ClearFocus in SearchBarRenderer (PR)
  • [Android] Convert Android maps to GetMapAsync call (PR)
  • 38723 – “Update Content in Picker’s SelectedIndexChanged event causes NullReferenceException” (PR)
  • 42559 – “LineBreakMode does not work on UWP” (PR)
  • 45330 – “System.ObjectDisposedException: Cannot access a disposed object. Object name: ‘Android.Views.GestureDetector’.” (PR)
  • 52620 – “[iOS] Header in MasterDetailPage overwrites status bar” (PR)
  • 53203 – “XAMLC: AttachedProperty not found” (PR)
  • 53362 – “Layout regression in Grid on iOS: HorizontalOption = Center does not center” (PR)
  • 53381 – “Templated views no longer rendering (as of pre3)” (PR)
  • 53834 – “incorrect row heights on ios when using groupheadertemplate in Xamarin.Forms 2.3.4.214-pre5” (PR)
  • 53909 – “XML drawables cannot be used as ToolbarItem.Icon” (PR)

2.3.4.214-pre5

  • 51536 – “[iOS] Height of ViewCell and Height of ContextAction incorrectly measured” (PR)

2.3.4.212-pre4

  • 51642 – “[UWP] Picker doesnt show items in 2.3.4.184-pre1 – works in 2.3.3.180” (PR)
  • 51553 – “[UWP] Toolbar not shown for initial Detail page in MasterDetailPage” (PR)
  • 51802 – “[UWP] Detail Page Has Navigation Bar Even When Not Inside a NavigationPage” (PR)
  • 52533 – “Xamarin.Forms v2.3.4.192-pre2 Regression: System.ArgumentException: NaN is not a valid value for width” (PR)

2.3.4.211-pre3

  • [AppLinks][Nuget] Remove fix dependency on MonoDroid70 (PR)
  • 47756 – “[2.3.4–171-pre1] TabbedPage doesn’t working fine with forms version 2.3.4.171-pre1” (PR)
  • 51238 – “Transparent Grid causes Java.Lang.IllegalStateException: Unable to create layer for Platform_DefaultRenderer” (PR)
  • 51505 – “ObjectDisposedException On Effect detachment.” (PR)
  • 52622 – “”Missing Value for Setter“ error when using property element syntax in Style” (PR)
  • 52885 – “ActivityIndicatorView does not null check the IndeterminateDrawable” (PR)

2.3.4.192-pre2

  • [iOS] Remove “Enabled” usage on AdjustsFontSizeToFitWidth (PR)
  • [iOS] redraw Frame on CornerRadius changed (PR)
  • [Android] Add MonoAndroid70 to Forms/Map .nuspec (PR)
  • [Android] Add MonoAndroid70 to Forms/Map .nuspec (PR)
  • 49228 – “XAMLC NRE when x:Static is used on a const defined in seperate assembly” (PR)
  • 51503 – “NullReferenceException and crash on VisualElement finalization.” (PR)
  • 51567 – “XamlC: ”The given key was not present in the dictionary.“ in some xaml files” (PR)
  • 51703 – “MessagingCenter.Unsubscribe unsubbs ALL instances that has subscribed to the message” (PR)

2.3.4.184-pre1

Enhancements

  • [Enhancement][Core] new OnPlatform mechanism (PR)
  • [Enhancement] OnIdiom support for Desktop (UWP) [Breaking change] (PR)
  • [Enhancement] Added CornerRadius property To Frame control (PR)
  • [Enhancement][Android] Show keyboard on app resume if control has focus (PR)
  • [Enhancement] Add extensibility point to load tab icons from another source (PR)
  • [Enhancement] Full feature compatibility with WPF’s Colors class (PR)
  • [Enhancement][iOS] Add Platform Specific feature for setting AdjustsFontSizeToFitWidth on Entry (PR)
  • [Enhancement] Bindable picker (PR)
  • [Enhancement][Core] Add Tizen to TargetPlatform (PR)
  • [Enhancement][Android] Enable 24-hr formatting for Android TimePicker (PR)

Other Changes

  • [Core] Avoid duplicating code in OnPlatform (PR)
  • [Core] Defer initialization of Application.Properties until first use (PR)
  • [Core] Improve registry startup and lookup performance (PR)
  • [Core] Remove unnecessary string replace in Color.FromHex (PR)
  • [Core] Platform specifics naming adjustments (PR)
  • [Android] Fix NRE in packager dispose (PR)
  • [Android] Don’t create FontExtensions Regex unless/until necessary (PR)
  • [Android] NavigationPageRenderer should not create a Fragment unnecessarily (PR)
  • [Android] Internal keyboard hide/show should handle null views (PR)
  • [Android] Prevent crash in event when renderer is null in Layout call. (PR)
  • [Android] Always set a non-null Device.Info (PR)
  • [Android] Make CommitAllowingStateLoss the default for FragmentTransactions (PR)
  • [Android] Set AndroidCodeGenTarget to XAJavaInterop1 (PR)
  • [iOS] Deprecate versions of iOS older than 8 (PR)
  • [iOS] Dispose tap gesture properly in phone master detail renderer (PR)
  • [iOS] Restore old Alert/ActionSheet method for iOS 8 (PR)
  • [iOS] Have PresentAlert hide new window when alert is dismissed (PR)
  • [iOS] Add Platform Specific features for PrefersStatusBarHidden/UIStatusBarAnimation (PR)
  • [iOS] Put the child view underneath the Navigation Bar when translucent (PR)
  • [Windows] Fix Device Style inheritance (PR)
  • [Windows] Modified type cast to appropriate type (PR)
  • [UWP]Track user location when IsShowingUser enabled (PR)
  • [Xaml] use op_implicit defined on Target (PR)
  • [Xaml] change namespace for [XmlnsDef] and make it internal (PR)
  • [Xaml] support arrays as x:Arguments (PR)
  • [Xaml] support short Properties for PropertyCondition (PR)
  • [XamlC] import members on x:Static and factories (PR)
  • [Xamlc] compile data triggers (PR)
  • [Xamlc] remove unused locals (PR)
  • [XamlC] detect duplicate x:Name at compile time (PR)
  • [XamlC] Compile TypeTypeConverter (PR)
  • [XamlC] compiled trigger (PR)
  • [XamlC] Allow compilation of IValueProviders (PR)
  • [XamlC] Optimize stlod ldloc (PR)
  • [XamlC] compile ThicknessTypeConverter (PR)
  • [XamlC] fix loading ulongs, optimize bytecode for longs (PR)
  • [XamlC] Optimize data template IL (PR)
  • [XamlC] support custom markups on ABPs (PR)
  • [XamlC] Type ref tests, and fixes (PR)
  • [XamlC] Compile ContraintTypeConverters (PR)
  • [XamlC] drop ICSharpCode.Decompiler (PR)
  • [XamlC] use correct filePath for XamlC error reporting (PR)
  • [XamlC] TypedBindings, some tests, a compiler, … (PR)
  • [Xaml] more primitive types (PR)
  • [Xaml] cleanup xmlns usage, add XmlnsDefinition (PR)
  • [UITest] Update to UITest 2.0.5 (PR)
  • [Internal] Add sample HanselForms and TwitterDemo to ControlGallery (PR)

Bug Fixes

  • 26104 – “In Android cannot remove the divider line between header and listitems.” (PR)
  • 28650 – “In a Listview on iOS, ”andExpand“ does not expand when text is two lines long” (PR)
  • 28953 – “Device.StartTimer (still) behaves differently on different platforms” (PR)
  • 29110 – “VerticalOptions = LayoutOptions.Center or CenterAndExpand, of Sliders on Windows Phone does not result in centered display” (PR)
  • 31141 – “Change Entry keyboard type while typing” (PR)
  • 33248 – “Entry.Completed calling Editor.Focus() inserts new line to the focused Editor in iOS” (PR)
  • 36846 – “ActionBar does not dismiss when content which called it is removed” (PR)
  • 36907 – “[Android] PopToRootAsync() Not Working From OnResume()”
  • 38204 – “[iOS] Picker Fires SelectedIndexChanged Early” (PR)
  • 38284 – “when creating a map in iOS, if the map is not visible when the page is created the zoom level is off” (PR)
  • 38989 – “[Android] NullReferenceException when using a custom ViewCellRenderer” (PR)
  • 39312 – “[UWP] OnIdiom.Desktop property does not exist.” (PR)
  • 39359 – “Image View does cache failed HTTP responses” (PR)
  • 39489 – “[iOS] Memory leak when using NavigationPage with Maps” (PR)
  • 40073 – “Toolbar items are not not functioning properly on UWP” (PR)
  • 41054 – “Cannot update Entry.Text from attached Behavior on UWP” (PR)
  • 41415 – “ScrollX and ScrollY values are not consistent with iOS” (PR)
  • 42055 – “[UWP][WinRT] ScrollView/ListView Bottom Cut Off in a Modal Page” (PR)
  • 42264 – “MergedWith doesn’t work at application level” (PR)
  • 42651 – “Pushing a page on the navigation stack while device is rotating crashes the app” (PR)
  • 42926 – “[Android] TableSection without Title is rendered as empty TextCell” (PR)
  • 43313 – “Adding an item to ListView ItemSource has unexpected animation with different height rows and HasUnevenRows is true” (PR)
  • 43429 – “Slider with minimum greater than 0 gets incorrect bound value on Android” (PR)
  • 43469 – “execute await App.Current.MainPage.DisplayAlert() twice will crash on UWP real phone” (PR)
  • 43639 – “Maps control does not keep its center when resized” (PR)
  • 43735 – “Multiple Swipe on ContextActions” (PR)
  • 44074 – “OnDetachingFrom for Behavior is never called, therefore memory can leak due to event handlers not being unbound” (PR)
  • 44453 – “[UWP] ToolbarItem Text hard to see when BarTextColor is light” (PR)
  • 44830 – “ListView not consistently focusing at the end of the list.” (PR)
  • 45092 – “Group property of ItemTappedEventArgs can’t be cast to original type, TemplatedItemList, since it is internal. [Breaking change]” (PR)
  • 45593 – “UWP: NavigationPage leaks memory” (PR)
  • 45702 – “Disabling back press on modal page causes app to crash” (PR)
  • 45926 – “MessagingCenter prevents subscriber from being collected” (PR)
  • 46921 – “XAML compiler produces invalid IL for resources using property element syntax, or even attributes” (PR)
  • 47203 – “Remove WeakReference IsAlive true references in XF source code” (PR)
  • 47938 – “BarBackgroundColor not set on UWP”
  • 48236 – “BackgroundColor for Stepper behaves differently on iOS to Android and UWP” (PR)
  • 49104 – “Platform-specific IsNavigationBarTranslucent does not work on iOS” (PR)
  • 49307 – “XAML compilation throw exception: System.InvalidProgramException” (PR)
  • 49648 – “Xamarin Forms iOS Effect not called on WebView” (PR)
  • 51142 – “Toolbar not showing when using PushAsync on UWP” (PR)
  • 25677 – “Null reference crash on Amazon Fire TV” (PR)
  • 31422 – “Xamarin Forms Entry control and iOS Keyboard Shortcuts Problem” (PR)
  • 34553 – “Stackoverflow when reordering tabs in a TabbedPage” (PR)
  • 35736 – “Editor text value not updated when focus is lost” (PR)
  • 36802 – “[iOS] UITableViewCellAccessory Partially Hidden When Using RecycleElement” (PR)
  • 37431 – “NavigationRenderer sets Status Bar Style arbitrarily” (PR)
  • 38019 – “Can’t remove title bar in Material design” (PR)
  • 38265 – “Keyboard suggestions on Forms iOS do not function correctly on last word in Entry” (PR)
  • 38777 – “Inserting 10000 items into ListView causes UWP app to exit” (PR)
  • 38948 – “[UWP] ListViewCachingStrategy.RecycleElement Not Working” (PR)
  • 39489 – “[Android] Memory leak when using NavigationPage with Maps” (PR)
  • 40263 – “3-finger tap causes crash” (PR)
  • 40408 – “[Windows RT] On Appearing not run for Tabbed Page and Master Detail Page” (PR)
  • 40722 – “Using FormsAppCompatActivity calls OnDisappearing on device sleep” (PR)
  • 40911 – “NRE with Facebook Login” (PR)
  • 40943 – “On Windows Store 8.1 and Windows UWP, BorderWidth on Button is ignored” (PR)
  • 41219 – “AutomationId is not set to the native controls of a TabbedPages tab items” (PR)
  • 41271 – “[UWP] Memory Leak from ListView in TabbedPage” (PR)
  • 41322 – “OnAppearing/Disappearing triggers for all pages in navigationstack backgrounding/foregrounding app” (PR)
  • 41418 – “Margin inside ScrollView not working properly” (PR)
  • 41535 – “UIViewControllerBasedStatusBarAppearance is set to false.” (PR)
  • 42096 – “[iOS] Entry Text Binding fails when iOS Auto-corrects text when the Entry loses focus (clicking outside of Entry)” (PR)
  • 42100 – “[UWP] Default Button Color is set to Transparent” (PR)
  • 42214 – “Project crashes with NRE in Main.cs – Xamarin Studio” (PR)
  • 42530 – “Entry.Text not updated when modified by iOS Autocorrect, word suggestions, or spellchecker” (PR)
  • 42621 – “iOS: DateTimeOffset doesn’t get correct TimeZone offset when you change the Date TimeZone in System settings” (PR)
  • 42832 – “Scrolling in ListView with active ContextActions causes System.NullReferenceException” (PR)
  • 42883 – “ScrollViewRenderer.OnTouchEvent not being called in when scrollView.Orientation = Horizontal on Android” (PR)
  • 43108 – “android:visibility=”gone“ in Tabbar.axml does not reclaim space” (PR)
  • 43301 – “Error in generated part of xaml page” (PR)
  • 43569 – “ToolbarItem Icon from local file” (PR)
  • 43663 – “PodalPushed and ModalPopped not working on UWP” (PR)
  • 43734 – “[Android AppCompat] TabbedPage tab title cannot be updated” (PR)
  • 43815 – “[Android] App.MainPage incorrect behaviour for view appearing and disappearing” (PR)
  • 44044 – “TabbedPage stealing gestures” (PR)
  • 44160 – “Android/Forms OnDisappearing firing minimized” (PR)
  • 44175 – “NavigationPageRenderer.ctor(IntPtr,JniHandleOwnership) constructor is missing error” (PR)
  • 44461 – “ScrollToPosition.Center works differently on Android and iOS” (PR)
  • 44476 – “[Android] Unwanted margin at top of details page when nested in a NavigationPage” (PR)
  • 44584 – “UWP – Editor: changing the background color will only take effect after the entry gained focus [Breaking change: Editor is now derived from FormsTextBox instead of TextBox]” (PR)
  • 44609 – “Easing.SpringOut not working with TranslateTo” (PR)
  • 44679 – “Error when toggling entry view’s IsPassword property (only on uwp)” (PR)
  • 44777 – “BarTextColor changes color for more than just the Navigation page” (PR)
  • 44803 – “iOS: Device orientation change incorrectly resizes NavigationPage” (PR)
  • 44954 – “[Windows] Toggling IsPassword on Multiple Entries Causes Crash” (PR)
  • 45178 – “ProgressBarRenderer can crash in native.” (PR)
  • 45255 – “[WinRT] Back Button Not Visible If Current Page Does Not Have a Title” (PR)
  • 45725 – “ActivityIndicator color property not working in windows 8.1” (PR)
  • 45743 – “Threading problem with PushAsync() after DisplayAlert() on iOS” (PR)
  • 45835 – “There is a blank space on the screen top on UWP 14393(Windows 10 1607 Mobile)” (PR)
  • 46494 – “Hardware/Software back button from MainPage of type MasterDetail causes ‘java.lang.IllegalStateException: Activity has been destroyed’” (PR)
  • 46630 – “[Xamarin.Forms, Android] Context menu of the Editor control is not working in the ListView” (PR)
  • 46938 – “Toolbar Subtitle Reset When Screen Rotated” (PR)
  • 47637 – “ipad PopToRootAsync crashes with NullPointerException” (PR)
  • 47367 – “java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState” (PR)
  • 51773 – “XAMLC: Member ‘X’ is declared in another module and needs to be imported” (PR)

Discuss this post on the Xamarin Forums

Technical Bulletin: Xcode 8.3 Support for VS 2017

Update: Visual Studio 2017 (26228.12) from March 31 includes Xamarin Xcode 8.3 support

Be sure to update to Visual Studio 2017 15.0.26228.12 or higher via the Tools > Extensions and Updates menu to get Xcode 8.3 compatibility for the Xamarin extensions.


Old alternate manual update steps (from March 28)

With the release of Visual Studio 2017 and the new Visual Studio Installer, there were some changes to how the Xamarin extensions for Visual Studio get installed and updated. In VS 2017, Xamarin updates will now generally be published as an integrated part of the Visual Studio Product Updates in the Extensions and Updates menu. However, the Visual Studio Product Update from earlier today (26228.10) does not yet include Xamarin’s Xcode 8.3 support. Xcode 8.3 support will instead be included in a Visual Studio Product Update for the final versions of Xamarin 15.1, which are coming soon.

In the interim, we are providing downloadable versions of the Xamarin.VisualStudio and Xamarin.iOS extensions for VS 2017 that support Xcode 8.3.  In order to use these versions, please download them from the respective links below, and follow these instructions:

  1. If by chance either file downloads with a “.zip” extension in your browser, rename it back to “.vsix” (for example after enabling the  View > File name extensions checkbox in Windows Explorer).
  2. Shut down all instances of VS 2017 currently running.  We suggest you also close any instances of VS 2015 or 2013 as well.
  3. Double click the Xamarin.VisualStudio VSIX file.
  4. A pop up window with a number of checkbox options will appear. Select only the Visual Studio 2017 checkboxes. Be sure to un-check any checkboxes present for Visual Studio 2015 and lower. Then click the install button.
  5. Once installation of the Xamarin.VS VSIX file has fully completed, repeat steps 2 & 3 for the Xamarin.Apple.Sdk VSIX file.
  6. Once installation of both Xamarin.VS and Xamarin.iOS are complete, restart VS 2017, and confirm the new Xamarin and Xamarin.iOS extensions are installed by checking the versions listed in Help > About Microsoft Visual Studio.

If you see a behavior that looks suspicious in these versions, and if it isn’t clear whether one of the known issues in the release notes matches the problem, please file a quick bug report to let the team know.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.


Products Released


Uninstalling this Update from Visual Studio 2017

In the event that these versions need to be uninstalled, the Visual Studio Installer can be used to accomplish this. Read the uninstalling Xamarin guide for more information.

Note that uninstalling these manually installed VSIX files through this process will fully remove the Xamarin.VisualStudio extension from VS 2017. You will need to re-install the Xamarin component through the Visual Studio Installer to restore the previous Xamarin 4.3.0.784 version in VS 2017.

Stable Release: Cycle 9 SR0 with Xcode 8.3 Support

We are releasing an update to our current stable builds of Xamarin Studio, Xamarin for Visual Studio, and Xamarin.iOS. These new builds offer Xcode 8.3 support, for the Xamarin.iOS SDK and the Xamarin iOS Designer. In addition, we have addressed an intermittent NullReferenceException crash that could occur when canceling NSUrlSessionHandler HttpClient.SendAsync() requests via CancellationTokenSource.Cancel() in iOS projects (53794).

For Visual Studio 2017 users, be sure to update to Visual Studio 2017 15.0.26228.12 or higher to get the new versions of the Xamarin extensions.

If you see a behavior that looks suspicious in these versions, and if it isn’t clear whether one of the known issues in the release notes matches the problem, please file a quick bug report to let the team know.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.


Known Issues

For a list of known issues, please refer to the Release Notes for the appropriate product.


Products Released


Upgrading and Downgrading

You can install this new version by checking for updates on the Stable updater channel.

For Visual Studio 2017 users, be sure to complete the manual update steps on the corresponding blog post.

You can downgrade back to the previous Cycle 9 Service Release Stable versions by manually reinstalling each old package. See the KB article on downgrading. If you would prefer an email with any older installer links you need, feel free to write to contact@xamarin.com to request the older versions.

  • For Mac you’ll need: Xamarin Studio and Xamarin.iOS.
  • For Windows you’ll need: Xamarin.VisualStudio (from either the Xamarin.Android or Xamarin.iOS drop-down menu).

Technical Bulletin: Xcode 8.3

As announced on Apple’s developer news site, Apple has just released Xcode 8.3 final.

Xamarin is proceeding as usual to test for compatibility and publish an updated version of Xamarin.iOS for any modified or new APIs in Xcode. Keep an eye on this blog for status updates.

UPDATE March 28: Corresponding new versions of Xamarin.iOS, Xamarin for Visual Studio, and Xamarin Studio are now available. See the release announcement for additional details.

Beta Release: 15.1 Beta Preview 2

We are releasing the final Beta preview of our next major release, called 15.1. This release uses a new naming convention “15.1” that more closely resembles the sub-version numbering of Visual Studio 2017. “15.1” in this new scheme matches up with what Xamarin would have called “Cycle 10” under the old scheme.

This release is now available in the Xamarin updater channels and as part of the March 27 update for Visual Studio Preview. Note that the Xamarin version number in Visual Studio 2015 is slightly ahead of the version number in Visual Studio Preview in order to provide early availability of a few additional fixes. Xamarin coordination with the upstream schedule has been evolving across the VS 2017 releases, and plans are underway to synchronize more tightly as soon as possible. Watch for additional news on that topic as the 15.1 release moves into the Stable channel in the upcoming weeks.

Among other changes, these versions include a new experimental Concurrent Garbage Collector option for both Xamarin.Android and Xamarin.iOS.

As this is a Beta build, there are some known issues and the possibility of new issues being found during testing. Of course, additional bug reports are still welcome for these preview versions. If you see any suspicious behavior that you wish to report, please file a quick bug.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.

Please check out the product release notes to see all the fixes and known issues for this release.


Products Released


Installing the Beta and switching back to Stable

You can install this new Beta version or switch back to the current Stable version by changing updater channels.


Upcoming Release Dates

Alpha 1 – March 1st 2017

Alpha 2 – March 7th 2017

Beta 1 – March 16th 2017

Beta 2- This Release!

Pre-release: Xamarin.Forms 2.3.4.221-pre6

We’ve pushed Xamarin.Forms 2.3.4.221-pre6 to NuGet. To install the pre-release, check the pre-release option in your NuGet package manager and install this version.

If you’ve got a bug to report, drop us a detailed report here so we can troubleshoot.

Important notes

  • Behavior Change (iOS): ViewDidDisappear may not be reliably called in custom renderers. Please be sure to override Dispose to do any object cleanup that you may be doing in ViewDidDisappear to prevent any possible memory leaks in your custom renderers. (53351)
  • Behavior Change (UWP): Desktop is now a supported Idiom, so your UWP apps will return this value on desktop contexts. Please be aware that Phone will still be returned in continuum scenarios.

2.3.4.221-pre6

  • [iOS] Prevent NRE when page is switched on Appearing (PR)
  • [A]Fix potential crash when calling ClearFocus in SearchBarRenderer (PR)
  • [Android] Convert Android maps to GetMapAsync call (PR)
  • 38723 – “Update Content in Picker’s SelectedIndexChanged event causes NullReferenceException” (PR)
  • 42559 – “LineBreakMode does not work on UWP” (PR)
  • 45330 – “System.ObjectDisposedException: Cannot access a disposed object. Object name: ‘Android.Views.GestureDetector’.” (PR)
  • 52620 – “[iOS] Header in MasterDetailPage overwrites status bar” (PR)
  • 53203 – “XAMLC: AttachedProperty not found” (PR)
  • 53362 – “Layout regression in Grid on iOS: HorizontalOption = Center does not center” (PR)
  • 53381 – “Templated views no longer rendering (as of pre3)” (PR)
  • 53834 – “incorrect row heights on ios when using groupheadertemplate in Xamarin.Forms 2.3.4.214-pre5” (PR)
  • 53909 – “XML drawables cannot be used as ToolbarItem.Icon” (PR)

2.3.4.214-pre5

  • 51536 – “[iOS] Height of ViewCell and Height of ContextAction incorrectly measured” (PR)

2.3.4.212-pre4

  • 51642 – “[UWP] Picker doesnt show items in 2.3.4.184-pre1 – works in 2.3.3.180” (PR)
  • 51553 – “[UWP] Toolbar not shown for initial Detail page in MasterDetailPage” (PR)
  • 51802 – “[UWP] Detail Page Has Navigation Bar Even When Not Inside a NavigationPage” (PR)
  • 52533 – “Xamarin.Forms v2.3.4.192-pre2 Regression: System.ArgumentException: NaN is not a valid value for width” (PR)

2.3.4.211-pre3

  • [AppLinks][Nuget] Remove fix dependency on MonoDroid70 (PR)
  • 47756 – “[2.3.4–171-pre1] TabbedPage doesn’t working fine with forms version 2.3.4.171-pre1” (PR)
  • 51238 – “Transparent Grid causes Java.Lang.IllegalStateException: Unable to create layer for Platform_DefaultRenderer” (PR)
  • 51505 – “ObjectDisposedException On Effect detachment.” (PR)
  • 52622 – “”Missing Value for Setter“ error when using property element syntax in Style” (PR)
  • 52885 – “ActivityIndicatorView does not null check the IndeterminateDrawable” (PR)

2.3.4.192-pre2

  • [iOS] Remove “Enabled” usage on AdjustsFontSizeToFitWidth (PR)
  • [iOS] redraw Frame on CornerRadius changed (PR)
  • [Android] Add MonoAndroid70 to Forms/Map .nuspec (PR)
  • [Android] Add MonoAndroid70 to Forms/Map .nuspec (PR)
  • 49228 – “XAMLC NRE when x:Static is used on a const defined in seperate assembly” (PR)
  • 51503 – “NullReferenceException and crash on VisualElement finalization.” (PR)
  • 51567 – “XamlC: ”The given key was not present in the dictionary.“ in some xaml files” (PR)
  • 51703 – “MessagingCenter.Unsubscribe unsubbs ALL instances that has subscribed to the message” (PR)

2.3.4.184-pre1

Enhancements

  • [Enhancement][Core] new OnPlatform mechanism (PR)
  • [Enhancement] OnIdiom support for Desktop (UWP) [Breaking change] (PR)
  • [Enhancement] Added CornerRadius property To Frame control (PR)
  • [Enhancement][Android] Show keyboard on app resume if control has focus (PR)
  • [Enhancement] Add extensibility point to load tab icons from another source (PR)
  • [Enhancement] Full feature compatibility with WPF’s Colors class (PR)
  • [Enhancement][iOS] Add Platform Specific feature for setting AdjustsFontSizeToFitWidth on Entry (PR)
  • [Enhancement] Bindable picker (PR)
  • [Enhancement][Core] Add Tizen to TargetPlatform (PR)
  • [Enhancement][Android] Enable 24-hr formatting for Android TimePicker (PR)

Other Changes

  • [Core] Avoid duplicating code in OnPlatform (PR)
  • [Core] Defer initialization of Application.Properties until first use (PR)
  • [Core] Improve registry startup and lookup performance (PR)
  • [Core] Remove unnecessary string replace in Color.FromHex (PR)
  • [Core] Platform specifics naming adjustments (PR)
  • [Android] Fix NRE in packager dispose (PR)
  • [Android] Don’t create FontExtensions Regex unless/until necessary (PR)
  • [Android] NavigationPageRenderer should not create a Fragment unnecessarily (PR)
  • [Android] Internal keyboard hide/show should handle null views (PR)
  • [Android] Prevent crash in event when renderer is null in Layout call. (PR)
  • [Android] Always set a non-null Device.Info (PR)
  • [Android] Make CommitAllowingStateLoss the default for FragmentTransactions (PR)
  • [Android] Set AndroidCodeGenTarget to XAJavaInterop1 (PR)
  • [iOS] Deprecate versions of iOS older than 8 (PR)
  • [iOS] Dispose tap gesture properly in phone master detail renderer (PR)
  • [iOS] Restore old Alert/ActionSheet method for iOS 8 (PR)
  • [iOS] Have PresentAlert hide new window when alert is dismissed (PR)
  • [iOS] Add Platform Specific features for PrefersStatusBarHidden/UIStatusBarAnimation (PR)
  • [iOS] Put the child view underneath the Navigation Bar when translucent (PR)
  • [Windows] Fix Device Style inheritance (PR)
  • [Windows] Modified type cast to appropriate type (PR)
  • [UWP]Track user location when IsShowingUser enabled (PR)
  • [Xaml] use op_implicit defined on Target (PR)
  • [Xaml] change namespace for [XmlnsDef] and make it internal (PR)
  • [Xaml] support arrays as x:Arguments (PR)
  • [Xaml] support short Properties for PropertyCondition (PR)
  • [XamlC] import members on x:Static and factories (PR)
  • [Xamlc] compile data triggers (PR)
  • [Xamlc] remove unused locals (PR)
  • [XamlC] detect duplicate x:Name at compile time (PR)
  • [XamlC] Compile TypeTypeConverter (PR)
  • [XamlC] compiled trigger (PR)
  • [XamlC] Allow compilation of IValueProviders (PR)
  • [XamlC] Optimize stlod ldloc (PR)
  • [XamlC] compile ThicknessTypeConverter (PR)
  • [XamlC] fix loading ulongs, optimize bytecode for longs (PR)
  • [XamlC] Optimize data template IL (PR)
  • [XamlC] support custom markups on ABPs (PR)
  • [XamlC] Type ref tests, and fixes (PR)
  • [XamlC] Compile ContraintTypeConverters (PR)
  • [XamlC] drop ICSharpCode.Decompiler (PR)
  • [XamlC] use correct filePath for XamlC error reporting (PR)
  • [XamlC] TypedBindings, some tests, a compiler, … (PR)
  • [Xaml] more primitive types (PR)
  • [Xaml] cleanup xmlns usage, add XmlnsDefinition (PR)
  • [UITest] Update to UITest 2.0.5 (PR)
  • [Internal] Add sample HanselForms and TwitterDemo to ControlGallery (PR)

Bug Fixes

  • 26104 – “In Android cannot remove the divider line between header and listitems.” (PR)
  • 28650 – “In a Listview on iOS, ”andExpand“ does not expand when text is two lines long” (PR)
  • 28953 – “Device.StartTimer (still) behaves differently on different platforms” (PR)
  • 29110 – “VerticalOptions = LayoutOptions.Center or CenterAndExpand, of Sliders on Windows Phone does not result in centered display” (PR)
  • 31141 – “Change Entry keyboard type while typing” (PR)
  • 33248 – “Entry.Completed calling Editor.Focus() inserts new line to the focused Editor in iOS” (PR)
  • 36846 – “ActionBar does not dismiss when content which called it is removed” (PR)
  • 38204 – “[iOS] Picker Fires SelectedIndexChanged Early” (PR)
  • 38284 – “when creating a map in iOS, if the map is not visible when the page is created the zoom level is off” (PR)
  • 38989 – “[Android] NullReferenceException when using a custom ViewCellRenderer” (PR)
  • 39312 – “[UWP] OnIdiom.Desktop property does not exist.” (PR)
  • 39359 – “Image View does cache failed HTTP responses” (PR)
  • 39489 – “[iOS] Memory leak when using NavigationPage with Maps” (PR)
  • 40073 – “Toolbar items are not not functioning properly on UWP” (PR)
  • 41054 – “Cannot update Entry.Text from attached Behavior on UWP” (PR)
  • 41415 – “ScrollX and ScrollY values are not consistent with iOS” (PR)
  • 42055 – “[UWP][WinRT] ScrollView/ListView Bottom Cut Off in a Modal Page” (PR)
  • 42264 – “MergedWith doesn’t work at application level” (PR)
  • 42651 – “Pushing a page on the navigation stack while device is rotating crashes the app” (PR)
  • 42926 – “[Android] TableSection without Title is rendered as empty TextCell” (PR)
  • 43313 – “Adding an item to ListView ItemSource has unexpected animation with different height rows and HasUnevenRows is true” (PR)
  • 43429 – “Slider with minimum greater than 0 gets incorrect bound value on Android” (PR)
  • 43469 – “execute await App.Current.MainPage.DisplayAlert() twice will crash on UWP real phone” (PR)
  • 43639 – “Maps control does not keep its center when resized” (PR)
  • 43735 – “Multiple Swipe on ContextActions” (PR)
  • 44074 – “OnDetachingFrom for Behavior is never called, therefore memory can leak due to event handlers not being unbound” (PR)
  • 44453 – “[UWP] ToolbarItem Text hard to see when BarTextColor is light” (PR)
  • 44830 – “ListView not consistently focusing at the end of the list.” (PR)
  • 45092 – “Group property of ItemTappedEventArgs can’t be cast to original type, TemplatedItemList, since it is internal. [Breaking change]” (PR)
  • 45593 – “UWP: NavigationPage leaks memory” (PR)
  • 45702 – “Disabling back press on modal page causes app to crash” (PR)
  • 45926 – “MessagingCenter prevents subscriber from being collected” (PR)
  • 46921 – “XAML compiler produces invalid IL for resources using property element syntax, or even attributes” (PR)
  • 47203 – “Remove WeakReference IsAlive true references in XF source code” (PR)
  • 47938 – “BarBackgroundColor not set on UWP”
  • 48236 – “BackgroundColor for Stepper behaves differently on iOS to Android and UWP” (PR)
  • 49104 – “Platform-specific IsNavigationBarTranslucent does not work on iOS” (PR)
  • 49307 – “XAML compilation throw exception: System.InvalidProgramException” (PR)
  • 49648 – “Xamarin Forms iOS Effect not called on WebView” (PR)
  • 51142 – “Toolbar not showing when using PushAsync on UWP” (PR)
  • 25677 – “Null reference crash on Amazon Fire TV” (PR)
  • 31422 – “Xamarin Forms Entry control and iOS Keyboard Shortcuts Problem” (PR)
  • 34553 – “Stackoverflow when reordering tabs in a TabbedPage” (PR)
  • 35736 – “Editor text value not updated when focus is lost” (PR)
  • 36802 – “[iOS] UITableViewCellAccessory Partially Hidden When Using RecycleElement” (PR)
  • 37431 – “NavigationRenderer sets Status Bar Style arbitrarily” (PR)
  • 38019 – “Can’t remove title bar in Material design” (PR)
  • 38265 – “Keyboard suggestions on Forms iOS do not function correctly on last word in Entry” (PR)
  • 38777 – “Inserting 10000 items into ListView causes UWP app to exit” (PR)
  • 38948 – “[UWP] ListViewCachingStrategy.RecycleElement Not Working” (PR)
  • 39489 – “[Android] Memory leak when using NavigationPage with Maps” (PR)
  • 40263 – “3-finger tap causes crash” (PR)
  • 40408 – “[Windows RT] On Appearing not run for Tabbed Page and Master Detail Page” (PR)
  • 40722 – “Using FormsAppCompatActivity calls OnDisappearing on device sleep” (PR)
  • 40911 – “NRE with Facebook Login” (PR)
  • 40943 – “On Windows Store 8.1 and Windows UWP, BorderWidth on Button is ignored” (PR)
  • 41219 – “AutomationId is not set to the native controls of a TabbedPages tab items” (PR)
  • 41271 – “[UWP] Memory Leak from ListView in TabbedPage” (PR)
  • 41322 – “OnAppearing/Disappearing triggers for all pages in navigationstack backgrounding/foregrounding app” (PR)
  • 41418 – “Margin inside ScrollView not working properly” (PR)
  • 41535 – “UIViewControllerBasedStatusBarAppearance is set to false.” (PR)
  • 42096 – “[iOS] Entry Text Binding fails when iOS Auto-corrects text when the Entry loses focus (clicking outside of Entry)” (PR)
  • 42100 – “[UWP] Default Button Color is set to Transparent” (PR)
  • 42214 – “Project crashes with NRE in Main.cs – Xamarin Studio” (PR)
  • 42530 – “Entry.Text not updated when modified by iOS Autocorrect, word suggestions, or spellchecker” (PR)
  • 42621 – “iOS: DateTimeOffset doesn’t get correct TimeZone offset when you change the Date TimeZone in System settings” (PR)
  • 42832 – “Scrolling in ListView with active ContextActions causes System.NullReferenceException” (PR)
  • 42883 – “ScrollViewRenderer.OnTouchEvent not being called in when scrollView.Orientation = Horizontal on Android” (PR)
  • 43108 – “android:visibility=”gone“ in Tabbar.axml does not reclaim space” (PR)
  • 43301 – “Error in generated part of xaml page” (PR)
  • 43569 – “ToolbarItem Icon from local file” (PR)
  • 43663 – “PodalPushed and ModalPopped not working on UWP” (PR)
  • 43734 – “[Android AppCompat] TabbedPage tab title cannot be updated” (PR)
  • 43815 – “[Android] App.MainPage incorrect behaviour for view appearing and disappearing” (PR)
  • 44044 – “TabbedPage stealing gestures” (PR)
  • 44160 – “Android/Forms OnDisappearing firing minimized” (PR)
  • 44175 – “NavigationPageRenderer.ctor(IntPtr,JniHandleOwnership) constructor is missing error” (PR)
  • 44461 – “ScrollToPosition.Center works differently on Android and iOS” (PR)
  • 44476 – “[Android] Unwanted margin at top of details page when nested in a NavigationPage” (PR)
  • 44584 – “UWP – Editor: changing the background color will only take effect after the entry gained focus [Breaking change: Editor is now derived from FormsTextBox instead of TextBox]” (PR)
  • 44609 – “Easing.SpringOut not working with TranslateTo” (PR)
  • 44679 – “Error when toggling entry view’s IsPassword property (only on uwp)” (PR)
  • 44777 – “BarTextColor changes color for more than just the Navigation page” (PR)
  • 44803 – “iOS: Device orientation change incorrectly resizes NavigationPage” (PR)
  • 44954 – “[Windows] Toggling IsPassword on Multiple Entries Causes Crash” (PR)
  • 45178 – “ProgressBarRenderer can crash in native.” (PR)
  • 45255 – “[WinRT] Back Button Not Visible If Current Page Does Not Have a Title” (PR)
  • 45725 – “ActivityIndicator color property not working in windows 8.1” (PR)
  • 45743 – “Threading problem with PushAsync() after DisplayAlert() on iOS” (PR)
  • 45835 – “There is a blank space on the screen top on UWP 14393(Windows 10 1607 Mobile)” (PR)
  • 46494 – “Hardware/Software back button from MainPage of type MasterDetail causes ‘java.lang.IllegalStateException: Activity has been destroyed’” (PR)
  • 46630 – “[Xamarin.Forms, Android] Context menu of the Editor control is not working in the ListView” (PR)
  • 46938 – “Toolbar Subtitle Reset When Screen Rotated” (PR)
  • 47637 – “ipad PopToRootAsync crashes with NullPointerException” (PR)
  • 47367 – “java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState” (PR)
  • 51773 – “XAMLC: Member ‘X’ is declared in another module and needs to be imported” (PR)

Discuss this post on the Xamarin Forums