Exemple #1
0
 public static unsafe void SetImageServiceUploadNotificationBuilder(global::Android.App.Notification.Builder p0)
 {
     if (id_setImageServiceUploadNotificationBuilder_Landroid_app_Notification_Builder_ == IntPtr.Zero)
     {
         id_setImageServiceUploadNotificationBuilder_Landroid_app_Notification_Builder_ = JNIEnv.GetStaticMethodID(class_ref, "setImageServiceUploadNotificationBuilder", "(Landroid/app/Notification$Builder;)V");
     }
     try {
         JValue *__args = stackalloc JValue [1];
         __args [0] = new JValue(p0);
         JNIEnv.CallStaticVoidMethod(class_ref, id_setImageServiceUploadNotificationBuilder_Landroid_app_Notification_Builder_, __args);
     } finally {
     }
 }
        public override string Send(Notification notification)
        {
            var id = this.GetNextNotificationId();

            if (notification.IsScheduled)
            {
                var pending   = notification.ToPendingIntent(id);
                var ts        = notification.SendTime.Subtract(DateTime.Now);
                var triggerMs = Convert.ToInt64(JavaSystem.CurrentTimeMillis() + ts.TotalMilliseconds);

                this.alarmManager.Set(
                    AlarmType.RtcWakeup,
                    triggerMs,
                    pending
                    );
                return(id.ToString());
            }

            var builder = new global::Android.App.Notification
                          .Builder(Application.Context)
                          .SetAutoCancel(true)
                          .SetContentTitle(notification.Title)
                          .SetContentText(notification.Message)
                          .SetSmallIcon(this.appIconId);

            if (notification.Sound != null)
            {
                var file = new File(notification.Sound);
                var uri  = Android.Net.Uri.FromFile(file);
                builder.SetSound(uri);
            }
            //if (notification.Actions != null)
            //    notification.Actions.ToList().ForEach(x => this.AddActionToBuilder(builder, x));

            var not = builder.Build();

            this.notificationManager.Notify(id, not);
            return(id.ToString());
        }