Xamarin.Forms обрабатывает запуск уведомлений (UWP) - PullRequest
0 голосов
/ 25 марта 2019

Документация Xamarin - беспорядок во всем Интернете, но я не могу найти надежного примера того, как обрабатывать приложение Xamarin.Forms, запускаемое из уведомления, или обрабатывать уведомление, нажимаемое, когда мое приложение уже запущено.

Итак, я нахожусь внутри приложения Xamarin.Forms.UWP в файле App.xaml.cs, который обрабатывает весь запуск UWP.В методе OnActivated я вижу, что мое приложение получает пожар и получает правильные данные из моего уведомления о тосте.Мой вопрос заключается в том, как передать эти данные обратно в экземпляр Xamarin.Forms.

protected override void OnActivated(IActivatedEventArgs args)
 {
     base.OnActivated(args);
     var _args = (args as LaunchActivatedEventArgs).Arguments;
 }

Служба пользовательских уведомлений UWP:

ToastContent content = new ToastContent()
            {
                Launch = "...",
                Visual = new ToastVisual()
                {
                  BindingGeneric = new ToastBindingGeneric()
                  {
                      Children =
                        {
                            new AdaptiveText()
                            {
                                Text = title,
                                HintMaxLines = 1
                            },

                            new AdaptiveText()
                            {
                                Text = body
                            }
                        }
                  }
                },
                Actions = new ToastActionsCustom()
                {
                    Buttons =
                    {
                        new ToastButton(acceptAction.Key, $"action={acceptAction.Value}")
                        {
                            ActivationType = ToastActivationType.Foreground
                        },

                        new ToastButton(declineAction.Key, $"action={declineAction.Value}")
                        {
                            ActivationType = ToastActivationType.Background
                        }
                    }
                }
            };

            var toast = new ToastNotification(content.GetXml());

            ToastNotificationManager.CreateToastNotifier().Show(toast);

Как мне отправить эту переменную _args обратно в работающий экземпляр моего кроссплатформенного приложения, чтобы я мог обработать логикунавигации по маршруту и ​​т. д.

Кроме того, если мне придется написать какой-то собственный код для этого, я хочу, чтобы этот код был легко интегрируем по функциональности с приложением Xamarin.Forms.Android в этом проекте.а также.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...