- Visual Studio 2017 version 15.6 Preview – Visual Studio Preview Installer
- Visual Studio 2017 for Mac – Beta updater channel
- Visual Studio 2015 Tools for Xamarin – Beta updater channel
- The latest features and API requires Xcode 9.2 and the bundled iOS, tvOS and watchOS SDKs;
- Apple Xcode 9.2 requires a Mac running OSX 10.12.6 (Sierra) or newer;
We'd love to hear from you! If there are any problems with this release, check the Xamarin.iOS Forums, Xamarin Bugzilla Tracker and GitHub for existing issues. Report new issues and suggestions on GitHub.
This version Xamarin.iOS correspond to our 15.6 (
- January 10, 2018 - Xamarin.iOS 10.8.0.1
You can learn more about how we ship our releases in the Visual Studio 2017 Release Rhythm document.
January 10, 2018 - Xamarin.iOS 10.8.0.1
This version is included in the Visual Studio 2017 version 15.5 Preview 2 release.
- 32022 - [foundation] Fix
NSDateseconds (decimal) precision loss when converting
- 37527 - [generator] Incorrect
BI1029 Internal errorreported (instead of
- 58227 - [photos] Fix incorrect
- 58544 - [msbuild] Set the target architecture in the Info.plist
- 58792 - [generator] Disallow the use of
[Async]when the signature contains ref/out parameters
- 59196 - [uikit]
UIAccessibility.RequestGuidedAccessSessioncompletion handler is an ObjC block
- 59379 - [msbuild] Codesign iOS Simulator builds using the '-' key. Fix 'App Groups' support on simulator for iOS11
- 59547 - [metalperformanceshaders] Premature collection possible in some bindings
- 59617 - [registrar] Fix static registrar to detect invalid type usage
- 59697 - [msbuild] Don't run Xamarin.Analysis on library projects
- 59756 - [msbuild] Force-Init AppleSdkSettings in
- 59798 - [mtouch] Show
MT0123if the executable assembly does not reference the product assembly
- 59848 - [msbuild] Fixed ObjC binding targets to delete target zip files before re-zipping
- 59911 - [audiotoolbox] Free the right
GCHandlewhen failing to create an
- 59928 - [storekit] Fix
- 59947 - [llvm][bitcode] Attempting to JIT compile method 'ExceptionTests:test1basicfiltercatch ()' while running in aot-only mode.
- 59994 - [runtime] Don't hold the framework lock when running managed code
- 60176 - [linker] Handle
ParameterInfopreserved from XML definitions
- 60303 - [homekit] Expose weakly-typed API since the constants are extensible
- 60377 - [msbuild] Fix possible confusion by similar provisioning profiles
- 60423 - [security] Add
[__NSCFDictionary UTF8String]: unrecognized selector sent to instance
- 60536 - [msbuild] Catch json parser exceptions to provide better error reporting
- 60545 - [mono] Multiple argument generic with contravariant interface as an argument causes MissingMethodException
- 60771 - [aot] Attempting to JIT compile method 'System.Runtime.CompilerServices.Unsafe:Add (byte&,int)' while running in aot-only mode
- 61039 - [mtouch] Fix
Xamarin.Sdk.frameworknot to link with private frameworks when trying to support older OS where they were not yet available
- 61056 - [arkit] Fix
Vertices, 'TextureCoordinates' and 'TriangleIndices' types in
- 3089 - [coreanimation] Ensure that we increase the handle reference count in MakeMutable
- 59572 - [msbuild] Emit a build error when
CFBundleIdentifieris null or empty
- 52570 - [generator] warn when
[Static]is used in a
- 53076 - [generator] Lack of error when [
Async]is used inside a type decorated with
- 57094 - [generator] Improve
BI1014to include the name of unsupported field and valid types
- 57795 - [generator] Allow
[BindAs]attribute for smart enum used in multidimensional arrays
- 57797 - [generator] Support
[BindAs]attribute for smart enums of an array of nullable types
- 57804 - [generator] Slightly incorrect error message when trying to use ref/out parameters with
- 58251 - [msbuild] Add support for optionally explaining why inapplicable certificates are not applicable
- 59278 - [security] Add missing item in
- 59296 - [coreimage] Some
kCI*keys are missing
- 59537 - [coreanimation]
CATextLayer.Alignment*strings should be
- 60280 - [mtouch][mmp] Allow the use of major-only version numbers in arguments
- 60537 - [localauthentication]
LABiometryType.TypeFaceIdenum name is not consistent
- 60541 - [foundation] Expose
Integrated Mono Features/Fixes
Additional information can be found in Mono release notes.
What's New in this Release
This release is built upon our open sourced SDK and offers the following new features:
- Support for wireless deployment and debugging
- Base Class Libraries (BCL) Debugging
- mtouch support for response file
- Xamarin.Analysis HttpClient handler rule
Support for wireless deployment and debugging
The new Apple TV 4K (5th generation) does not have an USB (C) connector, which is the usual way for developers to install and debug applications on devices.
Xamarin.iOS now has the capability to detect devices connected via network (Wi-Fi or Ethernet) and in combination with our latest Visual Studio for Mac release (Version 7.4 Preview 2) debugging over network is also possible.
Please take a look at the Visual Studio for Mac release notes for more details.
Base Class Libraries (BCL) Debugging
mtouch support for response file
mtouch tool has a new option that accept arguments inside a response file.
- 56501 - MSB6002 command-line for MTouch task is too long, > 32000 characters / [mtouch/mmp/bgen] Add support for response files. (#2808)
The mentioned limit is for Windows and the default one for macOS is quite larger.
Xamarin.Analysis HttpClient handler rule
We added a new rule to our project analysis tool which recommends using a native
HttpClientHandler instead of the managed one for better performance, smaller executable size, and to easily support the newer standards.
As a reminder to run the rules, in Visual Studio for Mac's menu, select Project > Run Code Analysis.
Note: all existing rules are documented here.
Using an older Xcode version
Using an older Xcode version (than the one mentioned in the above requirements) is often possible, but some features may not be available. Also some limitations might requires workarounds, e.g.:
- The static registrar requires Xcode headers files to build applications, leading to
MT4109errors if API are missing. In most cases enabling the managed linker will help (by removing the API).
- Bitcode builds (for tvOS and watchOS) can fail submission to the App Store unless an Xcode 9.0+ toolchain is used.
The following documents contains a complete list of the API changes since the Xamarin.iOS 11.4 stable release: