Xamarin SDK

To use Linphone with Xamarin, you need the Xamarin SDK which contains the native libraries for Android, iOS and Windows 10 (for each architecture) and the C# wrapper that matches those libraries.

You can build your own SDK (see Linphone SDK README file) or you can download a pre-built ZIP archive with the native libraries for both Android & iOS plus the C# wrapper.

Pre-built SDK are available in two flavors: releases or nightly builds. Nightly builds are built every night from the master branch of linphone-sdk instead of release branch.

What's in the box

The Xamarin SDK embed the following:

  • The C# wrapper (named LinphoneWrapper.cs) ;
  • The Android libraries for armv7, arm64 (as AAR) ;
  • The iOS libraries for armv7, arm64 and x86_64 (as frameworks) ;
  • A sample solution based on Xamarin Forms for both Android and iOS platforms.

If you want to support an architecture that is not included in our SDK (for example x86), you can compile the libraries by yourself (see above).

Architecture

Once you have our SDK (either built by yourself or a pre-built archive you downloaded), you can open the Xamarin.sln solution inside the Xamarin folder of our sample app.

The sample we provide is a solution using four projects: one for Android, one for iOS, and two shared: one for the native libraries (our SDK), one for the app itself (the shared part).

The Android project contains the Android Manifest for the generated APK and an Activity that will load and display the application from the shared project.

The iOS project does the same thing that the Android one, but for iOS (obviously).