Integración de Geozones en MAUI Dotnet
Las Geozones permiten que Pushwoosh envíe notificaciones push según la ubicación del dispositivo. Antes de empezar, integre el SDK base como se describe en MAUI Dotnet, incluidos sus requisitos. Después, siga estos pasos:
- Añada el paquete NuGet Pushwoosh.DotNet.Geozones a su solución. Actualícelo junto con
Pushwoosh.DotNet. Geozones 2.0.x falla al iniciarse en iOS junto aPushwoosh.DotNet2.1.0 o posterior, por lo que con esa combinación la compilación se detiene conerror PW0002.

- Integración en Android
En su proyecto de Android, localice el archivo MainApplication.cs y llame a LocationManager.Init() en OnCreate() justo después de PushManager.Init(), antes de base.OnCreate(). base.OnCreate() construye la aplicación MAUI, y una página que usa LocationManager.Instance mientras se construye lo encuentra como null si Init() se ejecuta después:
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();}- Integración en iOS
Para su proyecto de iOS, abra el archivo AppDelegate.cs y llame al método LocationManager.Init() en 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();}- Añada permisos de localización según los requisitos de su aplicación.
El permiso Privacy - Location When In Use Usage Description siempre debe ser añadido.

5. Luego, inicie el seguimiento de la ubicación llamando al método StartLocationTracking().
using PushwooshSDK.DotNet.Geozones;
...
LocationManager.Instance.StartLocationTracking();