Xamarin.Android 8.1 Release Notes

System Requirements | What's New | Known Issues | Blogs | Open Source

Installing

Feedback welcome

Your feedback is important to us. If there are any problems with this release, check the Xamarin.Android Forums and Visual Studio Developer Community for existing issues. For new issues, let us know via the Report a Problem option found in your favorite IDE via Help -> Report a Problem.

Release History

You can learn more about how we ship our releases in the Visual Studio 2017 Release Rhythm document.

January 25th, 2018 - Xamarin.Android 8.1.5.0

This version is included in the Visual Studio 2017 version 15.5.5 release.

Integrated Mono Features/Fixes

Xamarin.Android uses Mono 5.4 commit 6fcdbac8.

Issues Fixed

  • Bugzilla #61073: fix classes-zip inception
  • Bugzilla #61002: Runtime exception: Cannot access a disposed object. Object name: 'MobileAuthenticatedStream'.

January 9th, 2018 - Xamarin.Android 8.1.3.0

This version is included in the Visual Studio 2017 version 15.5.3 release.

Integrated Mono Features/Fixes

Xamarin.Android uses Mono 5.4 commit b293f453.

Issues Fixed

  • 60625: local-propagation.c:562, condition `ins->opcode > MONO_CEE_LAST' not met

December 14th, 2017 - Xamarin.Android 8.1.0.25

This version is included in the Visual Studio 2017 version 15.5.2 release.

Issues Fixed

December 4th, 2017 - Xamarin.Android 8.1.0.24

This version is included in the Visual Studio 2017 version 15.5 release.

Issues Fixed

  • 51664: View.PerformAccessibilityAction and other AccessibilityAction methods map to the incorrect enum?
  • 51689: Xamarin does not handle "${applicationId}" build variable
  • 56648: warning XA0105: The $(TargetFrameworkVersion) for Mono.Android.Export.dll (v7.1) is greater than the $(TargetFrameworkVersion) for your project (v6.0). You need to increase the $(TargetFrameworkVersion) for your project.
  • 56819: Implementing java interfaces without inheriting Java.Lang.Object should fail early
  • 56859: Android Designer does not render Spinner correctly.
  • 57849: Getting "CSC : error CS1703: Multiple assemblies with equivalent identity have been imported" errors when installing nuget dependencies
  • 57991: Intellisense for a class library project in same solution fails to load in Xamarin.Android
  • 58403: Mismatching listener types/members generated broken event name
  • 58740: Building default Android project after adding Fsharp.core from nuget with 'link SDK assemblies only' dies with exception
  • 59045: JNI ERROR (app bug): attempt to use stale Local 0x19 (should be 0x100019)
  • 59235: [mono-2017-06] android.runtime.JavaProxyThrowable: System.ObjectDisposedException: Cannot access a disposed object.
  • 59355: Adding a control to a ViewGroup in the Document Outline creates two visual controls on the designer surface/xml.
  • 59516: Add fix from Bug 59015 - SIGABRT after executing async method
  • 59651: Xamarin.Forms build fails with command line overflow.
  • 59714: AndroidComponentInfoSystemImage.Abi reads Default for an x86 image
  • 59764: error APT0000: libpng warning: iCCP: Not recognizing known sRGB profile that has been edited with Android SDK Build Tools 23.0.2
  • 59822: Building an Android solution in Release mode that references a net standard project with a Microsoft.Identity reference results in a linker error.
  • 60080: After upgrading to latest Xamarin- Visual Studio stuck/hangs at initialization of xamarin.andorid project while loading projects
  • 60179: The APK includes x86_64 when targeting x86
  • 60343: Fixes an aapt error that occurs because DesignTime builds did not have their own set of cache files. DesignTime builds now have their own set of cache files which do not conflict with the main build's cache files.

Integrated Mono Features/Fixes

Xamarin.Android uses Mono 5.4 commit 950ea65c.

What's New in this Release

Design-Time Builds on Windows using the Managed Resource Parser (Experimental)

Xamarin.Android 8.1 brings support for design-time builds using a managed resource parser on Windows. Design-time builds are special builds that are launched by the project system to gather information to populate language services and project services. Design-time builds are indirectly launched in response to a user action such as changing project items by adding/removing files, modifying references, switching configurations or altering build settings.

This behavior is disabled by default. You can opt-in to this feature by setting the $(AndroidUseManagedDesignTimeResourceGenerator) property to True inside your project's .csproj:

<PropertyGroup>
  <AndroidUseManagedDesignTimeResourceGenerator>True</AndroidUseManagedDesignTimeResourceGenerator>
</PropertyGroup>

This will enable the managed resource parser rather than aapt. This will not disable other design-time build features.

For more information about design-time builds, please see the following documentation:

https://github.com/dotnet/project-system/blob/master/docs/design-time-builds.md#design-time-builds

Known Issues

JDK 9

Xamarin.Android does not currently support JDK 9. It is recommended to use JDK 8 until Android officially supports JDK 9.

For more information on this topic, please see our documentation on this topic in Xamarin.Android and Java Development Kit 9 or later

Java.lang.ClassNotFoundException

We have had multiple reports regarding applications running into a "Java.Lang.ClassNotFoundException: Didn't find class <md5.ClassName> on path: DexPathList" exception.

Developer Community

Managed Resource Parser

By opting-into the Managed Resource Parser, we have discovered that the Android Designer is incompatible for the following reasons:

  • 60878: Android design-time intellisense doesn't process global cache AARs
  • 60880: Android design-time intellisense gets deleted by IncrementalClean
  • 60881: Android design-time intellisense prevents designer from working with support libraries other custom controls

OSS Core

Xamarin.Android 8.1 is based on the open-source Xamarin.Android repositories: