using System; using Android.App; using Android.Content; namespace gehGassi.LocalNotifications.Platforms { /// /// Wird automatisch in AndroidManifest.xml generiert /// Ref : https://stackoverflow.com/questions/37379170/broadcast-receiver-onreceive-not-being-called-in-xamarin-android /// [BroadcastReceiver(Exported = true)] [IntentFilter(new[] { "android.intent.action.BOOT_COMPLETED", "android.intent.action.MY_PACKAGE_REPLACED" })] public class ScheduledNotificationBootReceiver : BroadcastReceiver { public override async void OnReceive(Context context, Intent intent) { try { Console.WriteLine("class ScheduledNotificationBootReceiver"); string action = intent.Action; if (action != null) { if (action.Equals(Intent.ActionBootCompleted) || action.Equals(Intent.ActionMyPackageReplaced)) { Console.WriteLine("Reschedule"); var notificationService = GetDefaultNotificationService(); await notificationService.RescheduleNotificationsAsync(context); } } } catch (Exception ex) { Console.WriteLine("Error in ScheduledNotificationBootReceiver : " + ex); } } public NotificationService GetDefaultNotificationService() => new NotificationService(); } }