Loading...

Introducing Azure Communication Services UI Library to Xamarin

Introducing Azure Communication Services UI Library to Xamarin

joshlai_microsoft_0-1665611798403.png

Overview

A few months ago we released the Azure Communication Services UI Library for iOS & Android (https://techcommunity.microsoft.com/t5/azure-communication-services/azure-communication-services-ui-library-now-available-for-ios/ba-p/3556319). Today we are excited to share our first efforts with Cross-Platform development. To help empower more mobile developers around the world we have created a Xamarin sample to showcase how to introduce calling capabilities into their current applications. 

The sample will walk through steps on how Xamarin developers can create a binding for the iOS and Android platform. These binding libraries allow a Xamarin application to consume and third-party native library. 

 

Using the Samples 

The great thing about our sample repo is that developers can just dive into our repo and take our bindings as is and include them in their project.  

Developers can check out the contents on XamariniOSBindings. There is a pre-built proxy library that bridges the Swift interface to Objective-C already, feel free to copy and edit these to your needs.  There is also a helpful script developers can use to build the FATFrameworks for the bindings.  

CommunicationUIProxy.Binding contains the solution that builds the .dll that can be used in your Xamarin Application. In your applications iOS.csproj you can add our newly created iOS binding .dll under the references folder.  

 

Learn more about creating iOS bindings here: Walkthrough: Bind an iOS Swift library - Xamarin | Microsoft Docs 

 

The contents of XamarinAndroidBindings has multiple folders in it.  AzureCore, AzureCommunicationCommon, and CommunicationUILibrary. Each contain their own solution and csproj. Developers can reference these csproj directly in their solution or use the .dll files they generated in their own application. Let's not forget to include our AzureCommunicationCalling .aar as an AndroidAarLibrary build item. 

 

Learn more about creating Android bindings here: Binding an .AAR - Xamarin | Microsoft Docs 

 

Now that the binding libraries are included, we can update the source code of the app and use the new public apis.  

 

Finally! Our app now can launch the UI composite. We now have an audio and video experience embedded into the app.  

Of course, you can always just run our sample solution in the repo, play around and see how things work. You will notice you can launch the experience and it will be identical to how you expect native behavior to be.  

 

Check out: Azure-Samples/communication-services-ui-library-xamarin: UI sample library on how to create Xamarin bindings (github.com) to learn more!  

Published on:

Learn more
Azure Communication Services Blog
Azure Communication Services Blog

Azure Communication Services Blog articles

Share post:

Related posts

Boost your Azure Cosmos DB Efficiency with Azure Advisor Insights

Azure Cosmos DB is Microsoft’s globally distributed, multi-model database service, trusted for mission-critical workloads that demand high ava...

3 hours ago

Microsoft Azure Fundamentals #5: Complex Error Handling Patterns for High-Volume Microsoft Dataverse Integrations in Azure

🚀 1. Problem Context When integrating Microsoft Dataverse with Azure services (e.g., Azure Service Bus, Azure Functions, Logic Apps, Azure SQ...

16 hours ago

Using the Secret Management PowerShell Module with Azure Key Vault and Azure Automation

Automation account credential resources are the easiest way to manage credentials for Azure Automation runbooks. The Secret Management module ...

1 day ago

Microsoft Azure Fundamentals #4: Azure Service Bus Topics and Subscriptions for multi-system CRM workflows in Microsoft Dataverse / Dynamics 365

🚀 1. Scenario Overview In modern enterprise environments, a single business event in Microsoft Dataverse (CRM) can trigger workflows across m...

1 day ago

Easily connect AI workloads to Azure Blob Storage with adlfs

Microsoft works with the fsspec open-source community to enhance adlfs. This update delivers faster file operations and improved reliability f...

2 days ago

Microsoft Azure Fundamentals #3: Maximizing Event-Driven Architecture in Microsoft Power Platform

🧩 1. Overview Event-driven architecture (EDA) transforms how systems communicate.Instead of traditional request–response or batch integration...

2 days ago

Azure Developer CLI (azd) – October 2025

This post announces the October release of the Azure Developer CLI (`azd`). The post Azure Developer CLI (azd) – October 2025 appeared f...

3 days ago

Microsoft Azure Fundamentals #2: Designing Real-Time Bi-Directional Sync Between Dataverse and Azure SQL for Multi-Region Deployments

Here’s a detailed technical breakdown of designing a real-time bi-directional sync between Dataverse and Azure SQL for multi-region deployment...

3 days ago

Azure DevOps local MCP Server is generally available

Today we are excited to take our local MCP Server for Azure DevOps out of preview 🥳. Since the initial preview announcement, we’ve work...

4 days ago

Announcing the new Azure DevOps Server RC Release

We’re excited to announce the release candidate (RC) of Azure DevOps Server, bringing new features previously available in our hosted version....

10 days ago
Stay up to date with latest Microsoft Dynamics 365 and Power Platform news!
* Yes, I agree to the privacy policy