HMS Xamarin Bindings
This repo contains the source code for HMS Xamarin first-party plugins, which are developed by the HMS Core team.
These plugins enable access to using kit-specific APIs. For more information about plugins, and how to use them, see Official Documentations.
Plugins
These are the available plugins in this repository.
Building
Prerequisites
The build script for this project uses Cake. To run the build, you can use one of the bootstrapper files either for Mac or Windows.
The bootstrapper script will automatically download Cake.exe and all the required tools and files into the ./tools/
folder.
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
Compiling
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 ios
dotnet cake
# Android
cd android
dotnet cake
The following targets can be specified using the --target=<target-name>
:
-
build
builds the class library bindings (depends onexternals
) -
externals
downloads and builds the external dependencies -
samples
builds all of the samples -
nuget
builds the nuget packages -
clean
cleans up everything
Note: In the main-components.cake
and dependency.cake
, there are only latest versions specified. You can change the versions and compile the projects as you like.
Question or issues
If you want to evaluate more about HMS Core, r/HMSCore on Reddit is for you to keep up with latest news about HMS Core, and to exchange insights with other developers.
If you have questions about how to use HMS samples, try the following options:
-
Stack Overflow is the best place for any programming questions. Be sure to tag your question with
huawei-mobile-services
. - Huawei Developer Forum HMS Core Module is great for general questions, or seeking recommendations and opinions.
If you run into a bug in our samples, please submit an issue to the Repository. Even better you can submit a Pull Request with a fix.