Intégration des Geozones avec MAUI .NET
Les Geozones permettent à Pushwoosh d’envoyer des notifications push en fonction de la position de l’appareil. Avant de commencer, intégrez le SDK de base comme décrit dans MAUI Dotnet, y compris ses prérequis. Suivez ensuite ces étapes :
- Ajoutez le package NuGet Pushwoosh.DotNet.Geozones à votre solution. Mettez-le à jour en même temps que
Pushwoosh.DotNet. Geozones 2.0.x plante au lancement sur iOS avecPushwoosh.DotNet2.1.0 ou une version ultérieure ; avec cette combinaison, la compilation s’arrête donc avecerror PW0002.

- Intégration Android
Dans votre projet Android, localisez le fichier MainApplication.cs et appelez LocationManager.Init() dans OnCreate() juste après PushManager.Init(), avant base.OnCreate(). base.OnCreate() construit l’application MAUI, et une page qui utilise LocationManager.Instance pendant sa construction le trouve à null si Init() s’exécute plus tard :
using Android.App;using Android.Runtime;using Pushwoosh.Android;using PushwooshSDK.DotNet.Geozones.Android;
...
[Application]public class MainApplication : MauiApplication{ public MainApplication(IntPtr handle, JniHandleOwnership ownership) : base(handle, ownership) { }
public override void OnCreate() { PushManager.Init(); LocationManager.Init(); base.OnCreate(); }
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();}- Intégration iOS
Pour votre projet iOS, ouvrez le fichier AppDelegate.cs et appelez LocationManager.Init() dans la méthode FinishedLaunching() :
using Pushwoosh.iOS;using PushwooshSDK.DotNet.Geozones.iOS;using UIKit;
...
[Register("AppDelegate")]public class AppDelegate : MauiUIApplicationDelegate{ public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) { PushManager.Init(); LocationManager.Init(); return base.FinishedLaunching(application, launchOptions); }
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();}- Ajoutez les autorisations de localisation en fonction des besoins de votre application.
L’autorisation Privacy - Location When In Use Usage Description doit toujours être ajoutée.

5. Ensuite, démarrez le suivi de la localisation en appelant la méthode StartLocationTracking().
using PushwooshSDK.DotNet.Geozones;
...
LocationManager.Instance.StartLocationTracking();