Tengo una aplicación que uso a veces. Debo haberlo dejado allí en el fondo antes de dormir. Cuando desperté vi esta notificación en mi pantalla.
¿Alguien tiene alguna sugerencia sobre cómo puedo hacer que una notificación como esta aparezca con mi aplicación XF ?
Además, ¿ también aparecen estas notificaciones en Android ? Nunca los he visto en mi teléfono Android , pero eso podría ser porque lo uso mucho menos.
Respuestas:
Podemos usar Shiny.Notifications NuGet Package para crear notificaciones locales multiplataforma en Xamarin.Forms
Aplicación de muestra
Puede encontrar una aplicación de muestra completada con el siguiente código aquí: https://github.com/brminnick/LocalNotificationsSample
Tutorial
1. Instalar Shiny.Notifications
Agregue el paquete NuGet Shiny.Notifications a su proyecto Xamarin.Forms, su proyecto Xamarin.iOS y su proyecto Xamarin.Android.
2. Inicialice Shiny.Notifications
Androide
En la
[Application]
clase, enOnCreate
, inicialice Shiny llamandoShiny.AndroidShinyHost.Init
y estableciendo su icono llamandoShiny.Notifications.AndroidOptions.DefaultSmallIconResourceName
:En
MainActivity.cs
, enOnRequestPermission
, permite que Shiny presente permisos de notificaciones de solicitud del usuario agregandoShiny.AndroidShinyHost.OnRequestPermissionsResult(requestCode, permissions, grantResults);
iOS
En
AppDelegate.cs
, enFinishedLaunching
, inicialice Shiny llamandoShiny.iOSShinyHost.Init
:3. Programe una notificación local
En este ejemplo, enviaremos una Notificación local de inmediato y programaremos una para que se envíe un minuto después de que se inicie la aplicación
https://github.com/brminnick/LocalNotificationsSample
fuente
Shiny.Notifications
con un servicio en primer plano? Quiero decir con elStartForeground(int id, Android.App.Notification notification)
método donde la notificación se debe proporcionar como unAndroid.App.Notification
?Puede usar
Notifications
para lograr esta función. De las notificaciones locales de documentos en Xamarin.Forms , encontraremos:Puede definir una API multiplataforma que la aplicación puede usar para interactuar con las notificaciones.
Para obtener más detalles, puede consultar el documento anterior, y este enlace también contiene una muestra sobre Notificaciones. Debería serle útil.
Por supuesto, si desea que su aplicación envíe notificaciones cuando la aplicación esté en segundo plano, puede usar tareas en segundo plano.
Para más detalles, puede consultar:
https://xamarinhelp.com/xamarin-background-tasks/
https://docs.microsoft.com/zh-cn/xamarin/ios/app-fundamentals/backgrounding/
https://docs.microsoft.com/en-ie/xamarin/android/app-fundamentals/services/creating-a-service/
fuente