![]() |
VOOZH | about |
dotnet add package Moody.Maui.GoogleMaps --version 1.1.0
NuGet\Install-Package Moody.Maui.GoogleMaps -Version 1.1.0
<PackageReference Include="Moody.Maui.GoogleMaps" Version="1.1.0" />
<PackageVersion Include="Moody.Maui.GoogleMaps" Version="1.1.0" />Directory.Packages.props
<PackageReference Include="Moody.Maui.GoogleMaps" />Project file
paket add Moody.Maui.GoogleMaps --version 1.1.0
#r "nuget: Moody.Maui.GoogleMaps, 1.1.0"
#:package Moody.Maui.GoogleMaps@1.1.0
#addin nuget:?package=Moody.Maui.GoogleMaps&version=1.1.0Install as a Cake Addin
#tool nuget:?package=Moody.Maui.GoogleMaps&version=1.1.0Install as a Cake Tool
Maps library for MAUI that uses Google maps on both mobile platforms - Android and iOS.
Usage is almost the same as Xamarin.Forms.GoogleMaps - github because it was forked from it. More information about library capabilities can be found there. Please note that after the migration to MAUI some properties, events or commands may have been omitted. Also, the namespace is Maui.GoogleMaps instead of Xamarin.Forms.GoogleMaps.
| Platform | Supported |
|---|---|
| iOS | Yes |
| Android | Yes |
| Windows 10/11 | No |
| Others | No |
// MainApplication.cs
[Application]
[MetaData("com.google.android.maps.v2.API_KEY",
Value = Variables.GOOGLE_MAPS_ANDROID_API_KEY)]
public class MainApplication : MauiApplication
{
public MainApplication(IntPtr handle, JniHandleOwnership ownership)
: base(handle, ownership)
{ }
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
}
And in the MauiProgram.cs file
// MauiProgram.cs
using Maui.GoogleMaps.Hosting;
...
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder.UseMauiApp<App>();
#if ANDROID
builder.UseGoogleMaps();
#elif IOS
builder.UseGoogleMaps(Variables.GOOGLE_MAPS_IOS_API_KEY);
#endif
return builder.Build();
}
If you want to animate Pin on the Map like UBER or other Tracking Apps you can use the below extension method:
pinTokyo = new Pin()
{
Type = PinType.Place,
Label = "Tokyo SKYTREE",
Address = "Sumida-ku, Tokyo, Japan",
Position = new Position(35.71d, 139.81d),
Rotation = 33.3f,
Tag = "id_tokyo",
IsVisible = switchIsVisibleTokyo.IsToggled,
TranslateAnimation = 2.5f, //this is the time in seconds for the pin to translate to new position
RotateAnimation = 2.5f //this is the time in seconds for the pin to rotate to new angle
};
If you need clustering, install 👁 NuGet
and add this line:
builder.UseGoogleMapsClustering();
For more information on clustering and regular map usage check out sample app:
I really appreciate your contribution. If u have spotted a bug you want to fix or have a feature/enhancement you would like to implement please open a pull request targeting the maui branch. If u have any questions you are free to reach out to me - all contact info is available in my profile.
See .
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-android34.0 net8.0-android34.0 is compatible. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-ios18.0 net8.0-ios18.0 is compatible. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
# 1.0.0
- Added Pin Animation