WP8.1 silverlight - событие с активированным уведомлением не вызывается

Я работаю над приложением Silverlight для Windows Phone 8.1, обработкой необработанных уведомлений.

Приложение, когда получает уведомления на переднем плане, должно отменить уведомление и создать новое уведомление, используя ToastNotificationManager.CreateToastNotifier().

Он также имеет backgroundtask работать с необработанными уведомлениями, полученными в фоновом режиме, который преобразует необработанные уведомления, полученные в всплывающее уведомление, используя ToastNotificationManager.CreateToastNotifier().

Также необходимо выполнить действие A при нажатии на это уведомление.

Проблема возникает, когда приложение получает уведомление, когда на переднем плане, но уведомление нажимается после приостановки приложения. Поскольку зарегистрированное активированное событие уведомления такого типа не находится в фоновой задаче (поскольку уведомление было сформировано в логике переднего плана), при щелчке уведомления действие не выполняется.

Это кажется ограничением для WP8.1 silverlight Программы. Может кто-нибудь предложить решение этой проблемы?

1 ответ

Решение

Если вам нужно выполнить какое-либо действие после нажатия на Toast, вы должны добавить wp:Param к вашему Toast с глубоким URL-адресом и дескриптором в вашем приложении. Тост будет выглядеть

<wp:Notification xmlns:wp=\"WPNotification\">
    <wp:Toast>
        <wp:Text1>You title</wp:Text1>
        <wp:Text2>Your subtitle</wp:Text2>" +
        <!-- You can add any parameter you want in deep url -->
        <wp:Param>/Page2.xaml?NavigatedFrom=Toast Notification</wp:Param>
    </wp:Toast>
</wp:Notification>

Когда вы нажимаете на тост, по умолчанию он открывает Page2.xaml вашего приложения и передает ему параметры URI.

Другие вопросы по тегам