SignalR/SignalR — pull request #2551 by Redth (2013-09-13 13:58:15+00:00)
Title: Updated Xamarin iOS and Android projects

There was some effort getting the PCL builds of SignalR working on Xamarin iOS and Android, however in practice it's proving to be fairly brittle and unstable as Xamarin releases come out (the latest Xamarin.iOS 6.9.7 breaks the PCL build working on iOS). It seems that until the licensing behind the BCL PCLs is straightened out, this may continue to be a problem (SignalR references System.Net.Http.Extensions.dll which doesn't exist on Xamarin as a dll, all the namespaces are in the System.Net.Http.dll instead).

For now, I think the easiest route is to continue to use the project types built specifically for Xamarin iOS and Android. I've made a few minor changes to bring these project types up to speed for now.

Most notably, is the removal of the Newtonsoft.Json.dll's from the libs/ folder for iOS and Android, and instead moving to use the Component Store versions of these libs. This will allow a NuGet like referencing of the library for Xamarin projects (this works in Visual Studio and Xamarin Studio), in which the Components are automatically downloaded and restored to the project.

I've also changed the IOS preprocessor directive to __IOS__ since this is the 'standard' symbol to use in Xamarin.iOS (it's automatically defined in Xamarin Studio, though it's still been added to the .csproj as Visual Studio does not define it automatically).