Mapbox.Maui
11.5.0-alpha03
See the version list below for details.
dotnet add package Mapbox.Maui --version 11.5.0-alpha03
NuGet\Install-Package Mapbox.Maui -Version 11.5.0-alpha03
<PackageReference Include="Mapbox.Maui" Version="11.5.0-alpha03" />
paket add Mapbox.Maui --version 11.5.0-alpha03
#r "nuget: Mapbox.Maui, 11.5.0-alpha03"
// Install Mapbox.Maui as a Cake Addin #addin nuget:?package=Mapbox.Maui&version=11.5.0-alpha03&prerelease // Install Mapbox.Maui as a Cake Tool #tool nuget:?package=Mapbox.Maui&version=11.5.0-alpha03&prerelease
Mapbox for MAUI
A dedicated library and starting sample for integrating Mapbox into your MAUI application.
Installation
Install-Package Mapbox.Maui --version 11.1.0-alpha01
Integrate into your project
Please check out my step-by-step blog post for more details.
How to run the examples
Prerequisites
- Visual Studio for Mac or Visual Studio for Windows
- .NET 7.0.306
- .NET workloads for iOS, Android, MAUI
Steps
1/ Generate/grab
MAPBOX_DOWNLOADS_TOKEN
from your Mapbox account page2/ Android: Put it into your local
~/.gradle/gradle.properties
echo "MAPBOX_DOWNLOADS_TOKEN=YOUR_MAPBOX_DOWNLOADS_TOKEN" >> ~/.gradle/gradle.properties
- 3/ Make a copy of
MapboxMauiQs.props.template
- Name it
MapboxMauiQs.props
- Replace
YOUR_MAPBOX_DOWNLOADS_TOKEN
with yours inMapboxMauiQs.props
file
- Name it
- 4/ Grab
mapbox_access_token
from your Mapbox account page- Make a copy of
MauiProgram.dev.cs.template
- Name it
MauiProgram.dev.cs
- Replace
YOUR_MAPBOX_ACCESS_TOKEN
with yours inMauiProgram.dev.cs
file
- Make a copy of
- 5/ Run the solution
Ported Examples
NOTE: A handy command to generate a new example
dotnet cake -- --name SymbolClustering --index 58 --group Annotations --title "Add Cluster Symbol Annotations" --subtitle "Show fire hydrants in Washington DC area in a cluster using a symbol layer."
Features
GestureSettings
# | Android | iOS | Aligned |
---|---|---|---|
1 | rotateEnabled | rotateEnabled | YES |
2 | scrollEnabled | panEnabled | NOPE |
3 | scrollMode | panMode | NOPE |
4 | simultaneousRotateAndPinchToZoomEnabled | simultaneousRotateAndPinchZoomEnabled | NOPE |
5 | doubleTouchToZoomOutEnabled | doubleTouchToZoomOutEnabled | YES |
6 | doubleTapToZoomInEnabled | doubleTapToZoomInEnabled | YES |
7 | focalPoint | focalPoint | YES |
8 | pitchEnabled | pitchEnabled | YES |
9 | quickZoomEnabled | quickZoomEnabled | YES |
10 | pinchScrollEnabled | pinchScrollEnabled | YES |
11 | pinchToZoomEnabled | N/A | NOPE, pinchEnabled & pinchZoomEnabled |
12 | pinchToZoomDecelerationEnabled | N/A | NOPE |
13 | rotateDecelerationEnabled | N/A | NOPE |
14 | scrollDecelerationEnabled | N/A | NOPE |
15 | increaseRotateThresholdWhenPinchingToZoom | N/A | NOPE |
16 | increasePinchToZoomThresholdWhenRotating | N/A | NOPE |
17 | zoomAnimationAmount | N/A | NOPE |
18 | N/A | pinchEnabled | NOPE |
19 | N/A | pinchZoomEnabled | NOPE |
20 | N/A | panDecelerationFactor | NOPE |
NOTES
- Failed to delete
.gradle
folder Due to Java process not killed gratefully.
taskkill -F -im java.exe
- Xamarin.Build.Download Xamarin.Build.Download is a tool to help download artifacts from remote URL to avoid embedding the native artifacts within the NuGet package with advantages
- Very thin and lightweight NuGet package
- Avoid any license viloation if the owner of the native lib doesn't want us to redistribute their lib
The downloaded artifact will be located at
- MacOS:
~/Library/Caches/XamarinBuildDownload
- Windows:
%USERPROFILE%/AppData/Local/XamarinBuildDownloadCache
- Kill all .NET processes
taskkill -F -im dotnet.exe
Maintainer
This project is maintained by tuyen-vuduc in his spare time and/or when requested.<br>
If you find this project is helpful and benefit your work/business, please give it a star, become a sponsor of the project and/or buy him a coffee.
LICENSE
This library is release under The BSD 3-Clause License. You are freely to use and make changes. However, this license doesn't override the license from Mapbox.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0-android34.0 is compatible. net8.0-ios17.2 is compatible. |
-
net8.0-android34.0
- Com.Mapbox.Maps.Android (>= 11.5.0)
- Dependencies.Gradle (>= 8.6.0.1)
- GeoJSON.Text (>= 1.0.2)
- Microsoft.Extensions.Logging.Debug (>= 8.0.0)
- Microsoft.Maui.Controls (>= 8.0.40)
- Xamarin.AndroidX.AppCompat (>= 1.6.1.10)
- Xamarin.AndroidX.Fragment (>= 1.7.0.2)
- Xamarin.AndroidX.Fragment.Ktx (>= 1.7.0.2)
- Xamarin.Build.Download (>= 0.11.4)
- Xamarin.Kotlin.StdLib (>= 1.9.23.3)
- Xamarin.Kotlin.StdLib.Common (>= 1.9.23.3)
-
net8.0-ios17.2
- GeoJSON.Text (>= 1.0.2)
- MapboxMaps.iOS (>= 11.5.1)
- MapboxMapsObjC.iOS (>= 11.5.1.1)
- Microsoft.Extensions.Logging.Debug (>= 8.0.0)
- Microsoft.Maui.Controls (>= 8.0.40)
- Xamarin.Build.Download (>= 0.11.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
11.7.1-alpha02 | 73 | 10/29/2024 |
11.6.0-alpha02 | 91 | 9/18/2024 |
11.6.0-alpha01 | 101 | 9/10/2024 |
11.5.1-alpha09 | 172 | 9/4/2024 |
11.5.1-alpha08 | 80 | 8/27/2024 |
11.5.1-alpha07 | 89 | 8/26/2024 |
11.5.1-alpha06 | 86 | 8/26/2024 |
11.5.1-alpha05 | 96 | 8/21/2024 |
11.5.1-alpha04 | 102 | 8/20/2024 |
11.5.1-alpha03 | 95 | 8/15/2024 |
11.5.1-alpha02 | 103 | 8/12/2024 |
11.5.1-alpha01 | 105 | 8/9/2024 |
11.5.0-alpha03 | 83 | 8/1/2024 |
11.5.0-alpha02 | 99 | 7/19/2024 |
11.5.0-alpha01 | 81 | 7/12/2024 |
11.4.0-alpha02 | 101 | 7/9/2024 |
11.4.0-alpha01 | 142 | 6/28/2024 |
11.3.0-alpha04 | 95 | 6/27/2024 |
11.3.0-alpha03 | 90 | 6/25/2024 |
11.3.0-alpha02 | 91 | 6/25/2024 |
11.1.0-alpha01 | 164 | 2/28/2024 |
10.11.1.1 | 613 | 7/20/2023 |
10.11.1 | 281 | 7/15/2023 |