Category Archives: Technical Bulletin

Technical Bulletin: Xcode 8.3 Support for VS 2017

With the release of Visual Studio 2017 and the new Visual Studio Installer, there were some changes to how the Xamarin extensions for Visual Studio get installed and updated. In VS 2017, Xamarin updates will now generally be published as an integrated part of the Visual Studio Product Updates in the Extensions and Updates menu. However, the Visual Studio Product Update from earlier today (build 26228.10) does not yet include Xamarin’s Xcode 8.3 support. Xcode 8.3 support will instead be included in a Visual Studio Product Update for the final versions of Xamarin 15.1, which are coming soon.

In the interim, we are providing downloadable versions of the Xamarin.VisualStudio and Xamarin.iOS extensions for VS 2017 that support Xcode 8.3.  In order to use these versions, please download them from the respective links below, and follow these instructions:

  1. If by chance either file downloads with a “.zip” extension in your browser, rename it back to “.vsix” (for example after enabling the  View > File name extensions checkbox in Windows Explorer).
  2. Shut down all instances of VS 2017 currently running.  We suggest you also close any instances of VS 2015 or 2013 as well.
  3. Double click the Xamarin.VisualStudio VSIX file.
  4. A pop up window with a number of checkbox options will appear. Select only the Visual Studio 2017 checkboxes. Be sure to un-check any checkboxes present for Visual Studio 2015 and lower. Then click the install button.
  5. Once installation of the Xamarin.VS VSIX file has fully completed, repeat steps 2 & 3 for the Xamarin.Apple.Sdk VSIX file.
  6. Once installation of both Xamarin.VS and Xamarin.iOS are complete, restart VS 2017, and confirm the new Xamarin.VS and Xamarin.iOS builds are installed by checking the versions listed in Help > About Microsoft Visual Studio.

If you see a behavior that looks suspicious in these versions, and if it isn’t clear whether one of the known issues in the release notes matches the problem, please file a quick bug report to let the team know.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.

 


 

Products Released


Uninstalling this Update from Visual Studio 2017

In the event that these versions need to be uninstalled, the Visual Studio Installer can be used to accomplish this. Read the uninstalling Xamarin guide for more information.

Note that uninstalling these specific VSIX files through this process will fully remove the Xamarin.VisualStudio extension from VS 2017. You will need to re-install the Xamarin component through the Visual Studio Installer to restore the previous Xamarin 4.3.0.784 version in VS 2017.

Technical Bulletin: Xcode 8.3

As announced on Apple’s developer news site, Apple has just released Xcode 8.3 final.

Xamarin is proceeding as usual to test for compatibility and publish an updated version of Xamarin.iOS for any modified or new APIs in Xcode. Keep an eye on this blog for status updates.

UPDATE March 28: Corresponding new versions of Xamarin.iOS, Xamarin for Visual Studio, and Xamarin Studio are now available. See the release announcement for additional details.

Technical Bulletin: Updating Xamarin Visual Studio 2017 & Side-by-Side

With the release of Visual Studio 2017, there have been questions on whether Visual Studio 2015 can be installed on the same machine. It is currently possible to install the two side-by-side on the same machine successfully. Do note that at the moment, Xamarin for Visual Studio 2017 is one build behind the version for Visual Studio 2015.

Xamarin coordination with the upstream schedule has been evolving across the VS 2017 releases, and plans are underway to synchronize more tightly as soon as possible. Watch for additional news on that topic over the next week.


Update Channels and Visual Studio 2017:

Visual Studio 2017 does not support Xamarin Alpha, Beta, and Stable channels in the same way as earlier versions of Visual Studio (or Xamarin Studio), but a Release and Preview model instead. To install a Preview instance alongside a stable install, download and run the Visual Studio Preview installer, selecting the Preview option during the install process as shown below:

vs2017-installer-sml

The Preview version of Visual Studio may include corresponding Preview versions of Xamarin functionality, including:

  • Forms
  • Xamarin Visual Studio Extension
  • Xamarin Profiler
  • Xamarin Workbooks/Inspector
  • Xamarin Remote iOS Simulator

More information is available in the Visual Studio 2017 Preview FAQ as well as in our documentation on updating.


Uninstalling Visual Studio 2017 Preview:

In the event that a preview version of Visual Studio 2017 needs to be uninstalled, the Visual Studio Installer can be used to accomplish this. Read the uninstalling Xamarin guide for more information.

⚠ Additional Considerations:

At the moment, uninstalling one of the side-by-side installations of Visual Studio 2017 will partially affect the Xamarin installation resulting in removal of the following dependencies from the target machine:

  • Xamarin Profiler
  • Xamarin Workbooks/Inspector
  • Xamarin Remote iOS Simulator
  • Apple Bonjour

This does not impact the remaining Visual Studio 2017 installation, but can have effects on building iOS solutions, profiling apps, and will completely remove Workbooks/Inspector and the Remote iOS Simulator.

To bring the remaining installation of Visual Studio 2017 back to its full feature set and restore the tools listed above and their functionality in the IDE, use the Visual Studio 2017 installer to repair the installation.

Stable Release: Updated Cycle 8 Service Release 1 w/ Xcode 8.2 Support

We are releasing an updated version of Cycle 8 Service Release 1 to the Stable channel which provides Xcode 8.2 support on top of our existing Stable builds. Please check out the product release notes to see all the fixes and known issues for this release.

If you notice an error in this blog post or have trouble downloading one of the installer packages, please let us know in the corresponding forum thread.


Known Issues

  • [Xamarin Studio]43188 – Sporadic “Out of memory” error during build leaves solution in an unbuildable state until the project is reloaded.
    • Improved in this release: Cycle 8 Service Release 1 includes some fixes that should hopefully eliminate the need to reload the project in this scenario. Additional fixes for the “Out of memory” error itself are also planned.

Products Released


Updating and downgrading
You can install this new version by checking for updates on the Stable updater channel.
You can downgrade back to the previous Cycle 8 Service Release 1 (from November 16) versions by manually reinstalling each old package. See the KB article on downgrading. If you would prefer an email with any older installer links you need, feel free to write to contact@xamarin.com to request the older versions.

  • For Mac you’ll need: Xamarin.iOS.
  • For Windows you’ll need: Xamarin.VisualStudio (from either the Xamarin.Android or Xamarin.iOS drop-down menu).

Technical Bulletin: Xcode 8.2

As announced on Apple’s developer news site, Apple has just released Xcode 8.2 final.

Xamarin is proceeding as usual to test for compatibility and publish an updated version of Xamarin.iOS for any modified or new APIs in Xcode. Keep an eye on this blog for status updates.

UPDATE: Corresponding new builds of Xamarin.iOS, Xamarin for Visual Studio, and Xamarin Profiler are now available. More info can be found here.

Technical Bulletin: Xcode 8.1 GM

As announced on Apple’s developer news site, Apple has just released the Xcode 8.1 GM seed.

Due to a few changes in the Xcode 8.1 GM version as compared to the previous Beta, Xamarin recommends against updating to Xcode 8.1 GM until a corresponding Xamarin compatibility release has been provided. Work is in progress to publish the core compatibility changes needed. The fixes for 45676 and 45855 are particularly important to make it straightforward to deploy to iOS devices and simulators without tricky workarounds.  New builds will tentatively be available before the end of the week.


Higher visibility known issues

  • [Xamarin for Visual Studio]45676 – “Failed to launch the simulator: Could not load the framework ‘libswiftAppKit.dylib’ … Library not loaded: @rpath/libswiftQuartzCore.dylib” when attempting to launch iOS 10.1 simulator.
  • [Xamarin.iOS]45855 – “Failed to launch the simulator: Could not load the framework ‘libswiftos.dylib’ (path: /Applications/Xcode.app/Contents/Frameworks/libswiftos.dylib): not found.” when attempting to launch iOS 10.1 simulator. Note: The public bug report mentions a fairly simple although inelegant workaround.
  • 45859 – “Error MT0074: Xamarin.iOS 10.0.2 does not support a deployment target of 10.1 for iOS (the maximum is 10.0).” when attempting to build a new template project that uses the new default deployment target of 10.1
    • Workaround: Open the Info.plist file in the plist editor and change the deployment target to 10.0 or lower instead of 10.1.
  • [Xamarin Studio], [Xamarin for Visual Studio] – 45861, 45862 – “May Slow Down Your iPhone … The developer of this app needs to update it to improve its compatibility.” because of default “i386” supported architecture setting in the iPhoneSimulator configuration on new projects
    • Fix: Change Project options > iOS Build > Supported architectures to x86_64 (instead of the default i386) for the iPhoneSimulator configuration.
  • [Xamarin.iOS] – 45899 – “error HE0035: Could not find a paired iPhone device for the Watch ‘watchOS 3.1 (14S471a) – Apple Watch – 42mm’ (C64439C5-9D9C-4B5C-B3B5-F77BBAA5B669)” when attempting to launch watch app on series1 sim

Intentional changes in Xcode 8.1 itself
As usual, be sure to also check the upstream release notes.

  • “May Slow Down Your iPhone … The developer of this app needs to update it to improve its compatibility.” alert dialog will be displayed when 32-bit applications are launched on 64-bit devices and simulators.
    • Fix: Be sure to configure your project to provide a 64-bit build for 64-bit devices.

Edits on this post

  • Oct 25, 2016: Add Bug 45899.

Technical Bulletin: Android SDK Build-tools 24

Version “24” of the Android SDK Build-tools package contains an upstream bug in aapt that can cause at least 2 errors:

  • ​””aapt.exe” exited with code -1073741819″ (This error can also appear if the Android SDK Build-tools version is not compatible with the installed version of Xamarin.Android. But in this particular case the error is due to the upstream bug.)
  • “The file “obj\Debug\android\bin\packaged_resources” does not exist.”

This bug has been fixed in Android SDK Build-tools 24.0.1.

Recommended fix: Uninstall Android SDK Build-tools version 24 using the Android SDK Manager.


Another separate issue is that versions 24 and higher of the Android SDK Build-tools package require Java JDK 8 or higher. This can cause at least 1 error:

  • “java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0”

Possible ways to fix:

  • Update to Java JDK 8, and then make sure that JDK 8 is selected in the Xamarin preferences:
    • Visual Studio: Tools > Options > Xamarin > Android Settings > Java Development Kit Location.
    • Xamarin Studio (on Mac): Xamarin Studio > Preferences > Projects > SDK Locations > Android > Java SDK (JDK).
  • Or uninstall all Android SDK Build-tools versions 24 and higher via the Android SDK manager.
  • Or set the AndroidSdkBuildToolsVersion MSBuild property to an earlier version. For example, if you also have version 23.0.3 installed, you could add the following line within the top <PropertyGroup> element in the Android project .csproj file:
    <AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>

(Edited on July 14, 2016: Simplify the recommendations and provide a link to the upstream bug.)
(Edited on July 25, 2016: Mention the new version Android SDK Build-tools 24.0.1.)
(Edited on August 11, 2016: Add a note about checking the JDK version in the Xamarin preferences.)

Technical Bulletin: Android N

We are aware that Google has released the first preview of Android N, and hope to have a compatible preview of Xamarin.Android that works with N available soon.

This first preview will only offer basic functional support, but we plan on releasing further previews in the coming months to add increased functionality based on the new features included with Android N.

Technical Bulletin: Stable Update for Windows Signing Certficate

We are releasing new Stable builds to update the certificate for our build signing step, as the old one is about to expire. These builds contain no functional changes from the previously released Stable builds, and thus should have no effect on projects made against the previous Stable builds.


Products Released

  • Xamarin Windows Installer

 

Stable Release: iOS 9.2 / Xcode 7.2 Support

We are releasing new Stable builds with support for the final iOS 9.2 API that Apple released yesterday as part of Xcode 7.2. Please note this release only supports the iOS 9.2 API, and does not include watchOS2 or tvOS support. Those will come to Stable at a later date (but are available as previews now)


Products Released