Ich arbeite an der "Funktion" der Push-Benachrichtigung Trigger in Windows Phone 8.1 verfügbar. Mein Ziel ist es, dies mit einem Windows Phone Silverlight 8.1 Projekt zu machen. Soweit ich weiß, sollte es basierend auf meiner Lektüre funktionieren.Push-Benachrichtigung Trigger auf Windows Phone 8.1 Silverlight
Nach 2 Tagen bin ich total fest. Egal was ich versuche. Wenn ich eine rohe Benachrichtigung an meine App sende, wird meine App abgebrochen und ich gehe zurück zum Windows-Menü. Die Ausgabe: Das Programm '[1852] BACKGROUNDTASKHOST.EXE' wurde mit Code 1 (0x1) beendet. Das Programm '[2712] AgHost.exe' wurde mit Code 1 (0x1) beendet.
Zustand:
- Die App erhält die Benachrichtigung. Es löst OnPushNotificationReceived aus. (Nach diesem Ereignis wird die App abgebrochen.)
- Die Push-Benachrichtigungsaufgabe wird deklariert und der Einstiegspunkt ist auf Push.Notification festgelegt.
- Ich erstelle eine Windows Runtime-Komponente für Windows Phone 8.1, um die Hintergrundaufgabe auszuführen.
- Die Hintergrundaufgabe ist gut registriert.
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)
{ }
}
}
- die Hintergrundaufgabe:
public sealed class Notification
{
public void Run(IBackgroundTaskInstance taskInstance)
{
Debug.WriteLine("Background starting...");
Debug.WriteLine("Background completed!");
}
}
Ich habe keine Ahnung, was ich falsch mache. Gibt es jemanden, der es funktioniert? (Nicht in der Theorie) Informationen habe ich 2 Warnungen, dass ich Sorgen:
- Ich habe eine Fehlpaarung in der Prozessarchitektur in meinen 2-Projekten. Mein Windows Phone Projekt verwendet "Any CPU" (kann das nicht ändern). Meine Windows Runtime Komponente Projekt verwenden "ARM". Wenn ich "Any CPU" wor meine WinRT verwende, habe ich einen Fehler: /Plattform: anycpu32bitpreferred kann nur mit/t verwendet werden: exe,/t: winexe und/t. appcontainerexe
- ein Konflikt auf eine abhängige Montage der zwei Projekte scheint zu sein,
gefunden Konflikte zwischen verschiedenen Versionen dieselbe abhängige Assembly Doppelklicken Sie in Visual Studio auf diese Warnung (oder wählen Sie sie aus und drücken Sie die Eingabetaste), um die Konflikte zu beheben, andernfalls fügen Sie die folgenden Bindungsumleitungen zum Knoten "runtime" in der Anwendungskonfigurationsdatei hinzu:
Vielen Dank im Voraus
Warum nicht das SignalR-Framework verwenden, um Push-Benachrichtigungen zu erstellen? – Flaugzig