Available Assemblies
Xamarin.iOS, Xamarin.Android, and Xamarin.Mac all ship with over a dozen assemblies. Just as Silverlight is an extended subset of the desktop .NET assemblies, Xamarin platforms is also an extended subset of several Silverlight and desktop .NET assemblies.
Xamarin platforms are not ABI compatible with existing assemblies compiled for a different profile. You must recompile your source code to generate assemblies targeting the correct profile (just as you need to recompile source code to target Silverlight and .NET 3.5 separately).
Xamarin.Mac applications can be compiled in three modes: one that uses Xamarin's curated Mobile Profile, the Xamarin.Mac .NET 4.5 Framework which allows you target existing full desktop assemblies, and an unsupported one that uses the .NET API found in a system Mono installation. For more information, please see our Target Frameworks documentation.
.NET Standard Libraries
In addition to the iOS, Android, and Mac bindings, Xamarin projects can consume .NET Standard libraries.
Portable Class Libraries
Xamarin projects can also consume .NET Portable Class Libraries, although this technology is being deprecated in favor of .NET Standard.
Supported Assemblies
These are the assemblies available in the Reference Manager > Assemblies > Framework (Visual Studio 2017) and Edit References > Packages (Visual Studio for Mac), and their compatibility with Xamarin platforms.
Assembly | API Compatibility | Xamarin iOS | Xamarin Android | Xamarin Mac |
---|---|---|---|---|
FSharp.Core.dll | ||||
l18N.dll | Includes CJK, MidEast, Other, Rare, West | |||
Microsoft.CSharp.dll | ||||
Mono.CSharp.dll | ||||
Mono.Data.Sqlite.dll | ADO.NET provider for SQLite; see limitations. | |||
Mono.Data.Tds.dll | TDS Protocol support; used for System.Data.SqlClient support within System.Data. | |||
Mono.Dynamic.Interpreter.dll | ||||
Mono.Security.dll | Cryptographic APIs. | |||
monotouch.dll | This assembly contains the C# binding to the CocoaTouch API. This is only available within Classic iOS Projects. | |||
MonoTouch.Dialog-1.dll | ||||
MonoTouch.NUnitLite.dll | ||||
mscorlib.dll | Silverlight | |||
OpenTK-1.0.dll | The OpenGL/OpenAL object oriented APIs, extended to provide iPhone device support. | |||
System.dll | Silverlight, plus types from the following namespaces: System.Collections.Specialized System.ComponentModel System.ComponentModel.Design System.Diagnostics System.IO System.IO.Compression System.IO.Compression.FileSystem System.Net System.Net.Cache System.Net.Mail System.Net.Mime System.Net.NetworkInformation System.Net.Security System.Net.Sockets System.Runtime.InteropServices System.Runtime.Versioning System.Security.AccessControl System.Security.Authentication System.Security.Cryptography System.Security.Permissions System.Threading System.Timers |
|||
System.ComponentModel.Composition.dll | ||||
System.ComponentModel.DataAnnotations.dll | ||||
System.Core.dll | Silverlight | |||
System.Data.dll | .NET 3.5 , with some functionality removed. | |||
System.Data.Services.Client.dll | Full oData client. | |||
System.IO.Compression | ||||
System.IO.Compression.FileSystem | ||||
System.Json.dll | Silverlight | |||
System.Net.Http.dll | ||||
System.Numerics.dll | ||||
System.Runtime.Serialization.dll | Silverlight | |||
System.ServiceModel.dll | WCF stack as present in Silverlight | |||
System.ServiceModel.Internals.dll | ||||
System.ServiceModel.Web.dll | Silverlight, plus types from the following namespaces: System System.ServiceModel.Channels System.ServiceModel.Description System.ServiceModel.Web |
|||
System.Transactions.dll | .NET 3.5; part of System.Data support. | |||
System.Web.Services.dll | Basic Web services from the .NET 3.5 profile, with the server features removed. | |||
System.Windows.dll | ||||
System.Xml.dll | .NET 3.5 | |||
System.Xml.Linq.dll | .NET 3.5 | |||
System.Xml.Serialization.dll | ||||
Xamarin.iOS.dll | This assembly contains the C# binding to the CocoaTouch API. This is only used in Unified iOS Projects. | |||
Java.Interop.dll | ||||
Mono.Android.dll | ||||
Mono.Android.Export.dll | ||||
Mono.Posix.dll | ||||
System.EnterpriseServices.dll | ||||
Xamarin.Android.NUnitLite.dll | ||||
Mono.CompilerServices.SymbolWriter.dll | For compiler writers. | |||
Xamarin.Mac.dll | ||||
System.Drawing.dll | System.Drawing is not supported in the Unified API for the Xamarin.Mac, .NET 4.5, or Mobile frameworks. System.Drawing support can be added to iOS and macOS using the sysdrawing-coregraphics library |