Я работаю над «функцией» триггера push-уведомления, доступного в телефоне Windows 8.1. Моя цель - сделать эту работу с проектом Windows Silverlight 8.1. Насколько я знаю, он должен работать на основе моего чтения.Push Notification Trigger на Windows Phone 8.1 Silverlight
Через 2 дня я полностью застрял. Независимо от того, что я пытаюсь. Когда я отправляю необработанное уведомление в мое приложение, мое приложение отменяется, и я возвращаюсь в меню Windows.
Выход: Программа '[1852] BACKGROUNDTASKHOST.EXE' вышла с кодом 1 (0x1). Программа '[2712] AgHost.exe' вышла с кодом 1 (0x1).
Состояние:
- приложение получает уведомление. Он вызывает OnPushNotificationReceived. (После этого события приложение отменено)
- Объявлено задание Push Notification, а точка входа определена как Push.Notification.
- Я создаю компонент Windows Runtime для телефона Windows 8.1 для запуска фоновой задачи.
- Фоновая задача хорошо зарегистрирована.
private async void RegisterBackgroundTask()
{
UnregisterBackgroundTask(taskName);
BackgroundAccessStatus backgroundStatus = await BackgroundExecutionManager.RequestAccessAsync();
if (backgroundStatus != BackgroundAccessStatus.Denied && backgroundStatus != BackgroundAccessStatus.Unspecified)
{
try
{
BackgroundTaskBuilder taskBuilder = new BackgroundTaskBuilder();
taskBuilder.Name = taskName;
PushNotificationTrigger trigger = new PushNotificationTrigger();
taskBuilder.SetTrigger(trigger);
taskBuilder.TaskEntryPoint = "Push.Notification";
BackgroundTaskRegistration task = taskBuilder.Register();
}
catch (Exception ex)
{ }
}
}
- фоновая задача:
public sealed class Notification
{
public void Run(IBackgroundTaskInstance taskInstance)
{
Debug.WriteLine("Background starting...");
Debug.WriteLine("Background completed!");
}
}
Я не имею ни малейшего понятия о том, что я делаю неправильно. Есть ли кто-нибудь, кто работает? (Не в теории) Для получения дополнительной информации, у меня есть 2 предупреждения, что меня беспокоит:
- у меня есть несоответствие в архитектуре процесса в моих 2 проектов. Мой проект в Windows Phone использует «Any CPU» (не могу изменить это). Мой проект компонента «Проживающие» в Windows использует «ARM» .Если я использую «Любой процессор», помните мой WinRT, у меня есть ошибка: /platform: anycpu32bitpreferred can быть использован только с/т: ех,/т: winexe и/т:. appcontainerexe
- Существует конфликт на зависимое собрании 2 проектов Кажется
Найденных конфликты между различными версиями одна и та же зависимая сборка. В Visual Studio дважды щелкните это предупреждение (или выберите его и нажмите Enter), чтобы исправить конфликты, в противном случае добавьте следующие переадресации привязки к узлу «runtime» в файле конфигурации приложения:
Заранее благодарен
Почему бы не использовать рамку SignalR, чтобы сделать push-уведомления? – Flaugzig