Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.

Xamarin Components for Facebook

Xamarin creates and maintains Xamarin.Android and Xamarin.iOS bindings for Facebook SDKs.



Before building the libraries and samples in this repository, you will need to install .NET Core and the Cake .NET Core Tool:

dotnet tool install -g cake.tool

When building on macOS, you may also need to install CocoaPods:

# Homebrew
brew install cocoapods

# Ruby Gems
gem install cocoapods


You can either build all the libraries and samples in the repository from the root:

dotnet cake

Or, you can build each component separately:

# iOS
cd Facebook.iOS
dotnet cake

# Android
cd Facebook.Android
dotnet cake

The following targets can be specified using the --target=<target-name>:

  • libs builds the class library bindings (depends on externals)
  • externals downloads and builds the external dependencies
  • samples builds all of the samples (depends on libs)
  • nuget builds the nuget packages (depends on libs)
  • clean cleans up everything

Working in Visual Studio

Before the .sln files will compile in the IDEs, the external dependencies need to be downloaded. This can be done by running the externals target:

dotnet cake --target=externals

After the externals are downloaded and built, the .sln files should compile in your IDE.


The license for this repository is specified in

External-Dependency-Info and THIRD-PARTY-NOTICE Files

Files named External-Dependency-Info within this repository exist to provide content to the THIRD-PARTY-NOTICES file of the Xamarin Component and NuGet binary packages. Information within the External-Dependency-Info files describe potential dependencies bundled with packages as a result of building projects within this repo.

Contribution Guidelines

You will need to complete a Contribution License Agreement before your pull request can be accepted. You can complete the CLA by going through the steps at

.NET Foundation

This project is part of the .NET Foundation