public void Notify(string FilesProgress, string FileName, double DataProgress, Classes.TransferState.State State) { var toastNotifier = ToastNotificationManager.CreateToastNotifier(); if (Notification == null) { ToastContent = new ToastContent() { Visual = new ToastVisual() { BindingGeneric = new ToastBindingGeneric() { AppLogoOverride = new ToastGenericAppLogo() { Source = "xamarin_logo.png", HintCrop = ToastGenericAppLogoCrop.Circle }, Children = { new AdaptiveText() { Text = State.ToString(), HintMaxLines = 1 }, new AdaptiveProgressBar() { Title = new BindableString("FileName"), Value = new BindableProgressBarValue("DataProgress"), Status = new BindableString("status"), ValueStringOverride = new BindableString("FilesProgress") } } } } }; Notification = new ToastNotification(ToastContent.GetXml()) { Priority = ToastNotificationPriority.High, Tag = NotificationTag, Group = NotificationGroup }; Notification.Dismissed += Dismiss; Notification.Data = new NotificationData(); Notification.Data.Values["FilesProgress"] = FilesProgress; Notification.Data.Values["FileName"] = FileName; Notification.Data.Values["DataProgress"] = DataProgress.ToString(); Notification.Data.Values["status"] = State.ToString(); Notification.Data.SequenceNumber = 0; toastNotifier.Show(Notification); } else { Notification.Data.Values["FilesProgress"] = FilesProgress; Notification.Data.Values["FileName"] = FileName; Notification.Data.Values["DataProgress"] = DataProgress.ToString(); Notification.Data.Values["status"] = State.ToString(); toastNotifier.Update(Notification.Data, NotificationTag, NotificationGroup); } }
public void Notify(string FilesProgress, string FileName, double DataProgress, Classes.TransferState.State State) { var builder = new NotificationCompat.Builder(Application.Context, "ID"); builder.SetProgress(1000, (int)(DataProgress * 1000), false) .SetPriority(NotificationCompat.PriorityMax) .SetContentText(FileName) .SetSubText(State.ToString() + " • " + FilesProgress) .SetSmallIcon(Resource.Drawable.xamarin_logo) .SetOnlyAlertOnce(true); NotificationManager notificationManager = NotificationManager.FromContext(Application.Context); var notification = builder.Build(); notification.Flags |= NotificationFlags.NoClear; notificationManager.Notify(5475, notification); }