Sheehan.Maui.GoogleMaps
6.0.2
dotnet add package Sheehan.Maui.GoogleMaps --version 6.0.2
NuGet\Install-Package Sheehan.Maui.GoogleMaps -Version 6.0.2
<PackageReference Include="Sheehan.Maui.GoogleMaps" Version="6.0.2" />
paket add Sheehan.Maui.GoogleMaps --version 6.0.2
#r "nuget: Sheehan.Maui.GoogleMaps, 6.0.2"
// Install Sheehan.Maui.GoogleMaps as a Cake Addin #addin nuget:?package=Sheehan.Maui.GoogleMaps&version=6.0.2 // Install Sheehan.Maui.GoogleMaps as a Cake Tool #tool nuget:?package=Sheehan.Maui.GoogleMaps&version=6.0.2
Maui.GoogleMaps
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 Support
Platform | Supported |
---|---|
iOS | Yes |
Android | Yes |
Windows 10/11 | No |
Others | No |
Setup
- Target .NET 8 for best experience
- Install into your MAUI project by downloading the library from nuget:
- Finish the Google Cloud Console setup
- Get your API Keys from Google, then in Platforms/Android:
// 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 need clustering, install and add this line:
builder.UseGoogleMapsClustering();
For more information on clustering and regular map usage check out sample app:
Contribution
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.
License
See LICENSE .
- logo.png by alecive - CC BY-SA 4.0
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-android34.0 is compatible. net8.0-browser was computed. net8.0-ios was computed. net8.0-ios17.5 is compatible. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- Microsoft.Maui.Controls (>= 8.0.61)
-
net8.0-android34.0
- Microsoft.Maui.Controls (>= 8.0.61)
- Xamarin.GooglePlayServices.Maps (>= 118.2.0.3)
-
net8.0-ios17.5
- AdamE.Google.iOS.Maps (>= 9.1.1.2)
- Microsoft.Maui.Controls (>= 8.0.61)
- Xamarin.Build.Download (>= 0.11.4)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Sheehan.Maui.GoogleMaps:
Package | Downloads |
---|---|
Sheehan.Maui.GoogleMaps.Clustering
Helper library for Sheehan.Maui.GoogleMaps to support clustering |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
6.0.2 | 97 | 11/30/2024 |
# 6.0.2
- Fix iOS crash caused by null reference exception