Xamarin 3.9

Xamarin 3.9

Xamarin 3.9 updates Xamarin.iOS 8.8 and Xamarin.Android 4.20 releases, and support for iOS 8.1 development.

Xamarin 3.9.547 updates Xamarin.iOS 8.9 and support for iOS 8.3 development.

v.3.9 Service Release 4

General
  • Fixed issue making WatchKit applications created from VS template unable to run on notification mode.
  • Fixed Build Signing identities disappearing when changing build configurations on iOS Bundle Signing project properties page.
  • Resolved Bug 28027 : causing for some setups VS cannot debug on physical iOS devices.
  • Fixed Bug 27990 Can't load NIB when XIB is in a subfolder of the project.
iOS Designer
  • Fixed a performance regression which could cause reloads to take multiple seconds to complete
  • Restored the 'Identity' panel for UIBarItem and several other widgets
  • Fixed an issue triggered when using UISplitViewController on Yosemite and Xcode 6.2
  • The editor for the Constraint 'Multiplier' property has much improved support for values in the form `1:2` or `3/4`
  • Fixed several cases where incorrect resize handles appear when an item was selected on the design surface
  • Several property panel related default values have been fixed for UIDatePicker and countdown timer
  • Resizing a UITableViewCell now works as expected using either the resize handle or the property panel
  • UISegmentedControl.ContentOffset is taken into account on the design surface
  • WKGlanceControllers can now be made custom classes.
  • WKInterfaceTimer now renders correctly when it's properties are changed
  • The arrow representing the 'Notification Category' now shows up on the design surface
  • WKInterfaceSwitch and WKInterfaceImage tint colours render on the surface now
  • Added support for WKNotificationCategory sash color
Known issues for SR4
  • Submission of WatchKit applications built from Visual Studio will fail with an "Invalid WatchKit Bundle" error. Please refer to the WatchKit app submission guide.
  • Stop debugging the WatchApp will not kill the WatchApp process and it will still open.
  • If there is no iOS App project referencing the WatchKit Extension, an "error MT1217: Could not load the app bundle at ..." is thrown at build time. To fix this error you need to add an iOS App project referencing the WatchKit extension.
  • For a brief period of time, v3.11.536 was available in the updater channels. That version exhibited a regression when building WatchKit applications and was rolled back. If you are experiencing this issue and are using v3.9.536, please check for updates.

v.3.9 Service Release 3

  • Fixed random crashes of Visual Studio on certain locales.
  • Made physical devices always show in the dropdown for iOS.
  • Fixed an issue causing the Info.plist editor layout to overlap for WatchKit projects in some displays.
  • WatchKit template adds a reference from WK Extension project to Watch App on unfold.

v.3.9.483

  • The Visual Studio 3.9.483 release adds full support for iOS 8.2 and WatchKit. You can now visually design, launch, and debug WatchKit apps in App, Glance, and Notifications mode.
  • We've added full documentation in the Xamarin Developer Portal. The Visual Studio toggle is available in the appropriate guides at the top right of the screen to customize your docs expereince for VS.
  • Sample code for Xamarin Watch apps is available from the Xamarin Samples Repository.

Known issues:

  • A list of known issues and workarounds is available here.

v.3.9.483

  • The Visual Studio 3.9.483 release adds full support for iOS 8.2 and WatchKit. You can now visually design, launch, and debug WatchKit apps in App, Glance, and Notifications mode.
  • We've added full documentation in the Xamarin Developer Portal. The Visual Studio toggle is available in the appropriate guides at the top right of the screen to customize your docs expereince for VS.
  • Sample code for Xamarin Watch apps is available from the Xamarin Samples Repository.

Known issues:

  • A list of known issues and workarounds is available here.

v.3.9 Service Release 2

Bug Fixes:
  • Fixed Bug 26122 - Debugging Android project causes real time antivirus to spike CPU
  • Fixed Bug 26606 - XIB files within iOS Class Libraries cause "Cannot copy ... /builds/$(BuildSessionId)/obj/ ... .nib ... as the source file doesn't exist"
  • Zip Log files command now includes one week of logs.
  • Fixed issue - Unable to deploy app to device directly using ad-hoc distribution profile.
  • Fixed an issue where the iOS Designer would restart frequently.
  • Fixed a crash editing constraints the iOS Designer property panel.
  • UISegmentedControls can now be added to UIToolbars.
  • An issue in the Outline panel which could crash Visual Studio was fixed.
  • The default memory settings for the android designer rendering process have been updated. Addresses Bug 26026.
  • Added a way to adjust the memory settings for the android designer rendering process. Please refer to the FAQ article for more information.

v.3.9.302

  • All ViewControllers should appear on the design surface now.
  • Custom Controls in Library projects will render and appear in the toolbox when using a Xamarin.iOS.dll based projects. Support for custom controls in the main project will be added in an upcoming release.

VS 2015 Support

  • Support for Visual Studio Android emulator in Xamarin Android projects.

Unified Devices

  • Xamarin VS now shows the devices list in the "Start" button inner drop-down.
  • It shows devices that matches the device family defined in the plist.
  • Select iPhoneSimulator platform by default when a new iOS project is unfolded.

Other new features:

  • Xamarin.iOS projects now have support for XCode assets catalogs from Visual Studio.
  • Added F# support: Templates for Xamarin.iOS (Unified API)and Templates for Xamarin.Android
  • Option for migrating Xamarin.iOS projects Classic to Unified API

Bug Fixes

v.3.9.45-preview

  • Fixes bug causing a build error with message "MergeApkRecipelists" task was not given a value for the required parameter "RecipeFiles" trying to build Android Projects.
  • Makes MSI installer to select all the detected compatible Visual Studio versions by default, to avoid the need of manually picking VS versions or changing features after install.

v.3.9.65-preview

  • Includes latest Xamarin.Forms 1.3 templates.
  • Fixes an issue causing Xamarin.iOS to not detect the right Screen.Size in some devices.

v.3.9.141

  • Fixed Bug 23969 - Getting error on running iOS Unified API application on device.
  • Bug 19312 - Supported architecture drop down menu greyed out when iOS target version >= 5.0, can't select ARMv7+ARMv7s
  • Fixed Bug 24150 - Opening the iOS Build properties changes the MtouchArch on unmodified template projects
  • Fixed Bug [XAP] Already running player shows up twice in device list
  • Fixed Bug 22494 - Application Loader fails with ERROR ITMS-9000: Invalid Bundle Structure
  • Fixed Bug 22010 - Getting build error when I set android project as a start up project in Xamarin.Forms
  • Fixed Bug - Getting error with 'Bundle Assemblies into native code' option enable.
  • Fixed Bug 17062 - No provisioning profiles have been detected.
  • Fixed Bug [XAP] VS does not recognize when a player is stopped or crashes
  • Fixed Bug At iOS Build> Advanced section, in default view no supported architectures displayed.
  • Fixed Bug 21300 - Updater details links open multiple tabs in browser
  • Fixed Bug Debugging session ended on iOS device.
  • Fixed Bug 23076 - Exceptions thrown from async methods on device cause "Debug information is not available for this frame" .

iOS Designer Improvements

  • Full support for Xamarin.iOS Unified projects.
  • SCNView, UIScreenEdgePanGestureRecognizer, UIVisualEffectView, UISplitViewController are all fully supported now.
  • Significantly improved support for UICollectionView and UICollectionViewLayout.
  • Added support for aspect ratio based constraints.
  • UITabBarController will no longer randomly disappear when creating new Tab segues.
  • Removed the ability to delete the NavigationBar from a UINavigationController. iOS will crash at runtime if you try this.
  • Constraints can now be exposed as an Outlet or custom class.
  • Fixed an issue changing the style of a UITableViewCell when constraints are disabled.
  • Fixed several issues where the property panel would write incorrect Xml to the storyboard.
  • Custom fonts are fully supported by the design surface and font picker.
  • Fixed a case where old assemblies were sometimes used to render custom controls.
  • Embed segues can now be created from Container Views.
  • Fixed an rare issue where views with zero width or zero height could break the designer.
  • Fixed a crash when deleting the segments inside a Segmented Control.
  • Custom properties of type 'float' and 'double' should work now.
  • Elements inside a UIScrollView will no longer change their position every time we render the storyboard.
  • Added support for UITextAlignment.Justified and UITextAlignment.Natural
  • Fixed an exception when right clicking on a Size constraint
  • The localization ID for UIView/UIViewController is displayed in the property panel now.
  • Improved support for UIViewController.PreferredStatusBarStyle.

Known Issues

  • When building a new Xamarin.iOS Unified Project, an error is presented stating that the code signing keys are invalid/don't match for the simulator if no valid Signing Key is present. The workaround is to manually remove the " <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>" line on the "Debug|iPhoneSimulator" configuration included in the .csproj file.
  • To Start debugging a Xamarin.iOS application in 'Release' Mode, the "Enable Debugging" checkbox included in the "iOS Build" panel of  project properties should be checked. If not, you will get a warning about it.
  • MtouchExtraArgs variables no longer expand, causing "Input string was not in a correct format" error. Users who need the "--gcc_flags" additional mtouch argument to link native libraries into projects in Visual Studio will encounter a bug, users who need the "--xml" additional mtouch argument to specify a custom XML linker file. There is a partial workaround replace the `${ProjectDir}` entries in the MtouchExtraArgs with absolute paths, but the easiest option for now is probably to downgrade [1] back to Xamarin 3.8.150 until a fix for Xamarin 3.9 is available later this month.
  • Newly created Xamarin.Forms template projects fail to deploy to iOS unless you first change the active build configuration This is a side effect of the new "Unified Devices" feature in Xamarin for Visual Studio 3.9. The problem is that if you create a new Xamarin.Forms project using the built-in portable template under "Templates -> Visual C# -> Mobile Apps -> Blank App (Xamarin.Forms Portable)", you will need to adjust the settings under the "Build -> Configuration Manager" menu before attempting to run on an iOS device or simulator. Otherwise Visual Studio will hit a build error.
  • Deployment of App to iOS Device with incorrect Provisioning Profile When attempting to deploy to an iOS device with an incorrect configured Provisioning Profile, the user will see the error message in the output with: "Failed to deploy application on the target device. Please try to rebuild the solution and try again." Visual Studio will hang and become unresponsive. The recommendation is to ensure that the provisioning profile is correctly configured with the specific iOS device and to ensure that the physical device can have applications deployed from XCODE

DWP handshake assertion

Please make sure that the following project property is NOT checked: Project -> Properties -> Android Options -> "Use Fast Deployment (debug mode only)"

Update to latest NuGet Package Manager (2.8.3+) is required

Updating to the latest version of  Microsoft NuGet Package Manager, which is compatible with Xamarin.iOS Unified API, is required. It can be updated from the Visual Studio Extension Manager.
More information is available in the following Visual Studio Gallery's links:

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.