Xamarin.Android 4.18

The Xamarin.Android 4.18 series contains various bug fixes.

Xamarin.Android 4.18.1

Known Issues

  • Fixing bug 23823 involved reverting some build-time performance improvements. Users may see a drop in repeated build performance when compared to 4.18.0. The performance enhancements will be re-worked and re-released in a future update.

Bug fixes

  • 13686: Problems with System.TimeZoneInfo.
  • 20172: System.TimeZone.CurrentTimeZone.GetUtcOffset(DateTime.Now) returns wrong value.
  • 21550: Crash on startup on Intel Atom x86 for MvvmCross app.
  • 22955: Basic DateTime calculations are throwing execptions since last update.
  • 22991: System.DateTime implementation should not use native objects.
  • 23405: DateTime.Now returns time off by 1 hour.
  • 23653: "Access to the path ...obj\Debug\res\... is denied" when resource files are marked as read-only.
  • 23823: Error rendering views with AppCompat.
  • 23880: Binary XML file line #1 Error inflating class when namespace is not lowercase in AXML.

Xamarin.Android 4.18.0

New Features

Known Issues in 4.18.0.30

  • 23167: XML View names not updated. In previous releases, if a Library project contained resource XML which referenced C# View types, the Library project's XML would be updated at build time to use the correct ACW's. That was accidentally broken.

    Workaround: Use ACW names in Layout .axml, not C# type names.

    This will be fixed in 4.18.0.32.

Bug fixes

  • 1969: System.Net.NetworkInformation.GetAllNetworkInterfaces() Fails.
  • 9770: Generator produces incorrect connector for the RegisterAttribute.
  • 18692: Including large numbers of Resources result in really slow build times.
  • 18763: Native SIGSEGVs don't invoke Android's SIGSEGV handler [Take 2!]. Thanks to 14 T.J. Purtell.
  • 21351: Attribute name has already been defined.
    Fixed in Xamarin.Android 4.18.0.32.
  • 21747: Returning long[] as inout parameter from Android service doesn't result in expected values.
  • 22057: Capital letters in Java package names cause java.lang.NoClassDefFoundError for resources.
  • 22061: Assets within Class Libraries are wrong embbeded in the Application referencing the class library.
  • 22155: GoogleApiClientBuilder.AddApi(Api, Object) throws Java.Lang.NoSuchMethodError Exception.
  • 22271: Stepping over breakpoints results in crash.
  • 22286: VMSafeMode (and others, i.e. AllowBackup) missing in ApplicationAttribute.
  • 23167: Regression involving Layout XML within Library projects.
    Fixed in Xamarin.Android 4.18.0.31.

Integrated Mono features/fixes

Based on Mono 3.10.0 commit 5d07b77a.

  • 833: Path.GetFullPath returns duplicate DirectorySeparatorStr if Directory.GetCurrentDirectory() == DirectorySeparatorStr.
  • 3211: Race condition when XmlAnyElement is applied to a XmlNode field
  • 6913: Error creating XmlSerializer on mono (on .NET is ok) when target's parent[!] class don't have parameterless constructor.
  • 10163: System.Net.WebClient.OpenWrite not working.
  • 11916: System.Xml.Linq.XElement cannot be de/serialized.
  • 18482: RSA - Import Public Key Bug.
  • 19097: Remove assert about condition param_count not met.
  • 19313: DeflateStream incorrectly blocks, whereas Microsoft's runtime works fine.
  • 20359: System.Net.WebClient.UploadValuesTaskAsync doesn't set Content-Type.
  • 21771: XmlReader.Dispose() calls Dispose(false)
  • 21960: HttpWebRequest NameValueHeaderValue does not allow quotes in key / values.
  • 21982: .net 4.5 constructor overloads for GzipStream/DeflateStream are still not implemented
  • 22059: Missing TypeLoadException for TypeBuilder.CreateType() with private interface
  • 22114: String.Format() incorrectly parses {{{0:C}}}
  • 22282: Mono 3.6.0 ClaimsPrincipal and ClaimsIdentity constructors fail and/or do not match .net 4.5.

API Changes

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.