Exemplo n.º 1
0
        private void ProcessNotification(NSDictionary options, bool fromFinishedLoading)
        {
            if (!(options != null && options.ContainsKey(new NSString("aps"))))
            {
                // Short circuit - nothing to do
                return;
            }

            NSDictionary aps = options.ObjectForKey(new NSString("aps")) as NSDictionary;

            if (!fromFinishedLoading)
            {
                var alertString = GetStringFromOptions(aps, "alert");
                // Manually show an alert
                if (!string.IsNullOrEmpty(alertString))
                {
                    var pictureString = GetStringFromOptions(aps, "picture");

                    // Show an alert
                }

                var opString = GetStringFromOptions(aps, "op");
                if (!string.IsNullOrEmpty(opString) && opString.Equals("sync"))
                {
                    var syncMessage = new PushToSync()
                    {
                        Table = GetStringFromOptions(aps, "table"),
                        Id    = GetStringFromOptions(aps, "id")
                    };
                    MessagingCenter.Send <PushToSync>(syncMessage, "ItemsChanged");
                }
            }
        }
Exemplo n.º 2
0
        private void ProcessNotification(NSDictionary options, bool fromFinishedLoading)
        {
            if (!(options != null && options.ContainsKey(new NSString("aps"))))
            {
                // Short circuit - nothing to do
                return;
            }

            NSDictionary aps = options.ObjectForKey(new NSString("aps")) as NSDictionary;

            if (!fromFinishedLoading)
            {
                var alertString = GetStringFromOptions(aps, "alert");
                // Manually show an alert
                if (!string.IsNullOrEmpty(alertString))
                {
                    var pictureString = GetStringFromOptions(aps, "picture");

                    UIAlertView alertView = new UIAlertView(
                        "TaskList",
                        alertString,
                        null,
                        NSBundle.MainBundle.LocalizedString("Cancel", "Cancel"),
                        NSBundle.MainBundle.LocalizedString("OK", "OK")
                        );
                    alertView.Clicked += (sender, args) =>
                    {
                        if (args.ButtonIndex != alertView.CancelButtonIndex)
                        {
                            if (!string.IsNullOrEmpty(pictureString))
                            {
                                App.Current.MainPage = new NavigationPage(new Pages.PictureView(pictureString));
                            }
                        }
                    };
                    alertView.Show();
                }

                var opString = GetStringFromOptions(aps, "op");
                if (!string.IsNullOrEmpty(opString) && opString.Equals("sync"))
                {
                    var syncMessage = new PushToSync()
                    {
                        Table = GetStringFromOptions(aps, "table"),
                        Id    = GetStringFromOptions(aps, "id")
                    };
                    MessagingCenter.Send <PushToSync>(syncMessage, "ItemsChanged");
                }
            }
        }
Exemplo n.º 3
0
        protected override void OnMessage(Context context, Intent intent)
        {
            Log.Info("GcmService", $"Message {intent.ToString()}");
            var op = intent.Extras.GetString("op");

            if (op == "eventsync")
            {
                var syncMessage = new PushToSync()
                {
                    Message = intent.Extras.GetString("message") ?? "Unknown Message",
                };
                MessagingCenter.Send <PushToSync>(syncMessage, "ItemsChanged");
            }
            var message = intent.Extras.GetString("message") ?? "Unknown Message";

            CreateNotification("Microsoft House", message, op);
        }
Exemplo n.º 4
0
        protected override void OnMessage(Context context, Intent intent)
        {
            Log.Info("GcmService", $"Message {intent.ToString()}");
            var op = intent.Extras.GetString("op");

            if (op != null)
            {
                var syncMessage = new PushToSync()
                {
                    Table = intent.Extras.GetString("table"),
                    Id    = intent.Extras.GetString("id")
                };
                MessagingCenter.Send <PushToSync>(syncMessage, "ItemsChanged");
            }
            else
            {
                var message = intent.Extras.GetString("message") ?? "Unknown Message";
                var picture = intent.Extras.GetString("picture");
                CreateNotification("TaskList", message, picture);
            }
        }