Autostart für ScheduledTaskAgent Autostart für ScheduledTaskAgent
Ergebnis 1 bis 12 von 12
  1. 21.01.2013, 07:38
    #1
    Hallo, ich aktualisiere meine LiveTile über einen ScheduledTaskAgent. Den Agenten starte ich beim Verlassen meiner App. Leider wird der Agent gestoppt, wenn man das Phone ausschaltet. Beim Einschalten wird der Agent aber nicht automatisch wieder gestartet. Gibt es evtl. einen Autostart oder einen ähnlichen Dienst bei Windows Phone 8, über den ich den Agenten beim Hochfahren starten kann?
    0
     

  2. 21.01.2013, 08:42
    #2
    Taucht das Problem bei dir auf einem physischen Phone eigentlich auch auf oder nur im Emulator? Generell werden PeriodicalAgents (schätze so einen verwendest du) nämlich nur deaktiviert wenn der User sie eben in den Einstellungen abschaltet oder wenn die App für 2 Wochen nicht gestartet wurde.
    0
     

  3. 21.01.2013, 08:55
    #3
    Das Problem taucht leider auch beim physischen Phone auf. Stimmt, ich nutze den PeriodicalAgent und starte ihn mit "ScheduledActionService.LaunchForTest(task.Name, TimeSpan.FromSeconds(60));" Evtl. ist das ja das Problem? Leider bin ich ein vollkommender Newcomer in der Windows Phone Entwicklerwelt und weiß noch nicht, wie ich den Agenten anders starten und stoppen kann.
    0
     

  4. 21.01.2013, 09:08
    #4
    Ok, das ist dann wohl das Problem: LaunchForTest ist NUR für das Debugging gedacht, da das System bei attachtem Debugger die Background Agents nicht automatisch startet (oder man ja z.B. nur alle 3 Stunden den laufen lässt aber beim Debuggen da halt natürlich nicht drauf warten will).

    Schau doch mal hier rein: http://msdn.microsoft.com/en-us/libr...vs.105%29.aspx

    Ansonsten kann ich nur empfehlen sich da mal ein Beispielprojekt zu den Tiles von dev.windowsphone.com runterzuladen, da wird das alles hergezeigt wie es funktionieren soll.
    1
     

  5. 21.01.2013, 09:47
    #5
    Vielen Dank für den Tip. Ich hatte schon gelesen, dass LauchForTest nur für das Testen des Agents gedacht ist. Nun möchte ich aber die LiveTile menütlich aktualisieren. Ich schau mir deine Tips mal an und hoffe das die menütliche Aktualisierung auch ohne die LauchForTest Methode zu realisieren ist.
    0
     

  6. 21.01.2013, 10:08
    #6
    Nein, ist sie nicht - du kannst einen ScheduledTask nur alle 30 Minuten ausführen lassen. Bzw. wenn der User den BatterySafer aktiviert werden die Hintergrundtasks gänzlich deaktiviert. Eine Möglichkeit wäre noch eine PictureTile (weiß grad nicht welche Klasse das ist) zu nutzen und halt mehrere Tiles zu hinterlegen die das System dann selbst durchrotiert (falls es z.B. mehrere Nachrichten gibt die man anzeigen will).

    Hintergrund der Einschränkung ist halt, damit nicht alle Minute irgendwas im Hintergrund losläuft und den Akku leersaugt.
    1
     

  7. 21.01.2013, 10:22
    #7
    Ah so, ist schon irgendwie verständlich, dass der Akku durch solche Funktionen geschützt werden soll. Dann wird aber quasi das Ausführen des Tasks mit LauchForTest forciert, denn damit klappt ja das minütliche Aktualisieren der LiveTile. Weißt du evtl. wie die minimale oder maximale Aktualisierungsrate bei einem Resource-Intensive Task ist? HTC hat ja z.B. eine Live Tile Uhr vorinstalliert. Die müssen es ja auch irgendwie hinbekommen, die Tile minütlich zu aktualisieren.
    0
     

  8. 21.01.2013, 11:06
    #8
    LaunchForTest wird dir beim deployen in den Marketplace wahrscheinlich einfach nicht durchgehen oder aber einfach keine Funktion mehr haben (bin mir da jetzt gerade nicht sicher - jedenfalls kriegst du minütliche Aktualisierung nicht in den Marketplace).

    Apps der Gerätehersteller musst du da leider aus der Betrachtung herausnehmen - die haben zusätzliche Berechtigungen und Möglichkeiten die so etwas zulassen, die für normale Entwickler aber nicht offenstehen.

    Der ResoureIntensive Task wird dir da nicht helfen. Der darf zwar längere Zeit aktiv sein und mehr Speicher benötigen wird aber generell nur ausgeführt wenn:

    a) Das Smartphone am Ladestrom hängt UND
    b) der Ladestand des Akkus > 90% beträgt UND
    c) eine WLAN-Verbindung besteht

    Zu den ganzen Constraints für Background Agents schaust du am besten hier rein: http://msdn.microsoft.com/en-us/libr...ntensiveAgents

    Was ist denn genau dein Use-Case? Also was willst du da auf der Tile darstellen?
    1
     

  9. 21.01.2013, 11:17
    #9
    Das hört sich natürlich nicht gut an. Ich möchte eine App für den Maschinenbau entwickeln. Dabei möchte ich aktuelle Ist-Parameter einer Maschine möglichst zeitnah auf der Live Tile darstellen, also Drücke, Temperaturen, etc. oder auch aktuelle Störmeldungen als Toast ausgeben. Da ist eine Latenz von einer halbe Stunde einfach zu lang.

    Weisst du evtl. wie z.B. Weckzeiten von Wecker-Apps getriggert werden? Die müssen ja doch auch minutengenau abgefragt werden.
    0
     

  10. Du kannst Scheduled Notifications erstellen die zu einer bestimmten Uhrzeit eine Toast-Nachricht anzeigen, siehe: http://msdn.microsoft.com/en-us/libr...dNotifications

    Das hilft dir in deinem Fall aber auch nicht weiter. Das Multitasking in WP8 ist einfach nicht dafür konzipiert auf einer Live-Tile ständig Live-Infomationen abzufragen. Wenn du halbwegs zeitnah etwas aktualisieren willst bleibt dir nur die Tile über den Push-Dienst zu aktualisieren. D.h. du hättest ein WebService dass die Daten der Maschine ausliest und im Alarmfall diese dann ans Device pusht. Dazu muss man aber anmerken, dass für wirklich kritische Dinge Microsoft davon abrät die Push-Dienste zu nutzen, da nicht sichergestellt ist dass Push-Nachrichten wirklich immer ankommen.

    Eine andere Variante von Apps für so etwas ist es dass sie unter dem Lockscreen weiterlaufen. Das funktioniert dann natürlich nur solange man sie auch wirklich weiterlaufen lässt und nirgends sonst hinwechselt. Bei Weckern ist das üblicherweise kein Problem, da man ja ohnehin schläft.
    1
     

  11. 21.01.2013, 12:22
    #11
    Zitat Zitat von StevieBallz Beitrag anzeigen
    Eine andere Variante von Apps für so etwas ist es dass sie unter dem Lockscreen weiterlaufen. Das funktioniert dann natürlich nur solange man sie auch wirklich weiterlaufen lässt und nirgends sonst hinwechselt. Bei Weckern ist das üblicherweise kein Problem, da man ja ohnehin schläft.
    OK, da hast Du mir in jedem Fall erst mal die Augen geöffnet, was mit Live Tiles geht und was nur unter Umständen geht. Trotzdem frage ich mich immer noch, wie HTC die Live Tile Uhr realisiert? Haben die andere APIs zur Verfügung, als wir privaten Entwickler? Und wenn ich "Firmen-Apps" entwickle, darf ich dann Methoden wie "LauchForTest" verwenden? Und andererseits beenden ich ja die Wecker App auch und trotzdem kommt um die eingestellte Uhrzeit ein Alarm hoch. Das wird dann aber sicher nicht mit einem Task Scheduler realisiert, sondern über irgend einen anderen Mechanismus, denn unter Einstellungen->Anwendungen->Hintergrundaufgaben steht ja nichts vom Wecker drin. Wie dem auch sei, ein bisschen ernüchternd ist das alles schon...

    ---------- Hinzugefügt um 13:22 ---------- Vorheriger Beitrag war um 13:16 ----------

    Hier ist noch das HTC 8S mit der minutengenauen Uhrzeit auf der Live Tile..
    http://images.otto.de/asset/mmo/form...ne-7571925.jpg
    0
     

  12. Ja, das ist so - hab ich aber auch schon beides in den Posts oben drinnenstehen, hier nochmal:

    Zitat Zitat von StevieBallz Beitrag anzeigen
    Apps der Gerätehersteller musst du da leider aus der Betrachtung herausnehmen - die haben zusätzliche Berechtigungen und Möglichkeiten die so etwas zulassen, die für normale Entwickler aber nicht offenstehen.
    Zitat Zitat von StevieBallz Beitrag anzeigen
    Du kannst Scheduled Notifications erstellen die zu einer bestimmten Uhrzeit eine Toast-Nachricht anzeigen, siehe: http://msdn.microsoft.com/en-us/libr...dNotifications
    Bei den Scheduled Notifications taucht das dann nicht im Multitasking-Bereich auf, einfach auch weil da dann zu diesem Zeitpunkt keinerlei Code von dir läuft sondern das komplett vom System erledigt wird.

    Wegen zusätzlicher Möglichkeiten für FirmenApps kann ich jetzt nichts sagen - durch die Zertifizierung müssen diese ja nicht aber ob du dann mit LaunchForTest was machen kannst kann ich dir leider trotzdem nicht beantworten. Mein Verdacht wäre aber: nein.
    1
     

Ähnliche Themen

  1. Autostart
    Von Comm4nd3r im Forum HTC HD2 Programme
    Antworten: 3
    Letzter Beitrag: 07.12.2009, 19:13
  2. Autostart
    Von Fat Tony im Forum HTC Touch Pro 2
    Antworten: 3
    Letzter Beitrag: 12.07.2009, 10:12
  3. Autostart
    Von Filewile im Forum HTC Touch Diamond 2
    Antworten: 3
    Letzter Beitrag: 14.06.2009, 15:34
  4. Autostart im G1?
    Von svenruppelt im Forum T-Mobile G1
    Antworten: 5
    Letzter Beitrag: 05.03.2009, 15:07
  5. REG Datei in Autostart für Doppelte Kontakte ?
    Von Hedi im Forum HTC Touch Diamond
    Antworten: 6
    Letzter Beitrag: 21.08.2008, 21:01

Besucher haben diese Seite mit folgenden Suchbegriffen gefunden:

windows phone 8 autostart

HTC HD2 Windows phone 8

htc 8s

htc windows phone 8s white black

phone 8 autostart

windows phone 8 scheduled task agent memory problem

wp8 scheduledactionservice.launchfortest

windows phone scheduled task memory consumption

htc windows phone 8s automatisch gestartete programme

windows phone 8 automatisch starten

scheduled task windows phone offline

autostart win phone 8

scheduled task windows phone

htc 8s black

windows phone 8 scheduledactionservice.launchfortest

windows phone autostart

htc phone 8s

windows phone 8 scheduled agent

windows phone 8 scheduled task agent starten

windows phone 8 apps autostart

windows phone 8s black white

windows phone 8 app autostart

windows phone scheduled task overview

scheduledtaskagent wp8 example

task automatisieren windows phone 8