Building the SDK (Mac)

To build the RingCentral SDK using Xamarin Studio on the Mac, follow these steps:

Build Dependencies

Build PubNub SDK

Clone PubNub Repository

$ git clone https://github.com/pubnub/c-sharp

Build PubNub Libraries

  1. Build the PubNub messaging DLL for each of the following: Xamarin.Android, Xamarin.iOS, Xamarin.Mac

Build RingCentral SDK

Clone RingCentral SDK Repository

$ git clone -b develop https://github.com/ringcentral/ringcentral-csharp

Build RingCentral Libraries

Bootstrap

  1. Open ringcentral-csharp/RingCentral.sln in Xamarin Studio
  2. Add RingCentral.Android and RingCentral.iOS to Configuration Mappings by navigating to Solution Options > Build > Configurations > Configuration Mappings and adding the solution items for the Release and / or Debug configurations.
  3. Close and reopen the solution to remove the alerts.

Build RingCentral solution item

  1. Build RingCentral solution item.

Build RingCentral.Android solution item

  1. Go to RingCentral.Android > References in solution explorer and delete PubNubMessaging and RingCentral which should have red X's.
  2. Add .Net Assembly reference to PubNubMessaging.dll for mono-for-android
  3. Add .Net Assembly reference to RingCentral.dll built above
  4. Build RingCentral.Android solution item

Build RingCentral.iOS solution item

  1. Go to RingCentral.iOS > References in solution explorer and delete J:\IoS\PubnubMessaging and RingCentral which should have red X's.
  2. Add .Net Assembly reference to PubnubMessaging.dll for monotouch
  3. Add .Net Assembly reference to RingCentral.dll built above
  4. Build RingCentral.iOS solution item

Build RingCentral.NET40 solution item

  1. Go to RingCentral.iOS > References in solution explorer and delete RingCentral which should have a red X.
  2. Remove PubnubCore and PubnubExample.cs from project
  3. Add .Net Assembly reference to PubNub-Messaging.dll for mono-for-mac
  4. Add .Net Assembly reference to RingCentral.dll built above
  5. Build RingCentral.NET40 solution item

Build RingCentral.NET40.Test solution item

  1. Add .Net Assembly reference to PubNub-Messaging.dll for mono-for-mac
  2. Build RingCentral.NET40.Test solution item

Build RingCentral solution

  1. Build RingCentral solution

Create NuGet Package

Edit and use the .nuspec file to create the NuGet package as appropriate. Be sure to use the proper directory forward slashes for Mac.

$ nuget pack ringcentral.mac.nuspec

See the following links for more information on publishing NuGet packages:

  1. Creating and Publishing a Package
  2. Creating NuGet Packages for Xamarin