0

In meiner Windows Phone 10 App habe ich eine lang andauernde Hintergrund-Aufgabe, ausgelöst durch einen RfcommConnectionTrigger. Diese Aufgabe wird so lange ausgeführt, wie mein Bluetooth-Rfcomm-Gerät verbunden ist.Internet-Zugang in einer lang andauernden Hintergrund-Aufgabe

Nun, was ich erreichen will, ist dies:

  • Das Bluetooth-Gerät einige Daten an die App auf dem Telefon sendet (in Betrieb)
  • Das Telefon hat einen Wert über eine HTTP-Anforderung nachschlägt (nicht funktioniert)
  • Das Telefon sendet an dem Bluetooth-Gerät (Arbeits das Ergebnis zurück)

Das Problem mit # 2 ist, dass, sobald ich das Gerät zu sperren, aus irgendeinem Grunde alle HTTP-Requests andernfalls starten. Ich benutze nur die System.Net.Http.HttpClient, um eine Anfrage zu machen, nichts Besonderes passiert dort. Genauer gesagt wird die Ausnahme in HttpClient.SendAsync geworfen.

Wie komme ich um diese Einschränkung herum?

+0

Könnte etwas im App-Manifest fehlen? (Nur spekulieren) –

+0

@ PedroG.Dias Es könnte sein, ich bin mir nicht sicher. Nach was soll ich suchen? - Ich habe offensichtliche Fähigkeiten wie "Internet (Client)" alle aktiviert. – Size43

+0

Was ist mit den Hintergrundaufgaben? Ich habe gesehen, dass Hintergrund-Aufgaben insgesamt 30 Sekunden "Wanduhr-Nutzung" haben, was auch immer das bedeutet - könnte es sein, dass du aus irgendeinem seltsamen Grund das Timing machst? https://msdn.microsoft.com/en-us/windows/uwp/launch-resume/support-your-app-with-background-tasks –

Antwort

1

I found the solution. Dies scheint ein völlig undokumentiertes "Feature" zu sein - Sie müssen eine SystemConditionType.InternetAvailable Bedingung zu Ihrer Hintergrundaufgabe hinzufügen, damit sie das Internet nutzen kann, wenn das Gerät gesperrt ist. Ich hoffe, dass dies nicht bedeutet, dass die Hintergrundaufgabe getötet wird, wenn das Telefon den Internetzugang verliert.

Es bedeutet auch, dass das Telefon jetzt mit dem Internet verbunden sein muss, um die Hintergrundaufgabe zu starten, die immer noch ärgerlich ist, aber ich denke, dass ich damit leben kann.

Verwandte Themen