Android - Zugriff auf System bzw. weiter laufen nach schließen der App

  • Servus,



    folgendes Frage hätte ich, hab jetzt ewig lang gegoogelt und einfach nix gefunden.
    Und zwar such ich eine möglichkeit wie weiter Punkte von einem "Lebensbalken" abgezogen werden, auch wenn man die App grad nicht am spielen ist.
    Sagen wir der User spielt, hat volles Leben und beendet die App. Wenn er 2 Stunden später wieder startet, hat er die hälfte vom Leben in der Zeit verloren.
    Wenn ich z.b dies mit Blueprints regel, stoppt diese Aktivität natürlich sobald die App geschlossen wurde.
    Jedoch gibt es z.b Tamagotchi Apps für Android bei denen es aber funktioniert. Das heißt wahrscheinlich irgendwie auf die Uhr vom System zugreifen kann.
    Sehe jedoch nicht wie ich dies mit der Unreal Engine ebenfalls machen kann, bzw überhaupt auf das Interne Android System irgendwie zugreifen könnte.


    Hat da jemand eine Idee oder anderen ansatz vielleicht?



    Schöne grüße aus Würzburg =)

  • Eine Möglichkeit wäre z.B. einen Thread permanent als Background Job laufen zu lassen.


    Ansonsten nutzt du mit der Unreal Engine ja das NDK und kannst wie du schon sagst z.B. auch einfach die Zeit, als die App beendet wurde, speichern und beim start die aktuelle Uhrzeit abgreifen und gegenrechnen.


    http://stackoverflow.com/quest…me-in-native-android-code


    Da haste z.B. eine Erklärung wie du an die Zeit ran kommst

  • Eine Berechnung über die Zeit ist wohl sinnvoller als ein permanenter Thread, immerhin könnte der Nutzer das Handy zwischenzeitlich aus machen oder der Akku geht leer. Bei den Spielen die ich kenne (die auch weiterlaufen wenn man nicht spielt) kann ich das Spiel sogar auf einem anderen Handy/Device mit dem selben Account nutzen und die Zeit wird korrekt übernommen.


    edit: Ich hab nochmal geguckt, Epic hat ein Struct dafür: https://docs.unrealengine.com/…Misc/FDateTime/index.html

  • Erstmal vielen dank für die schnellten Antworten auf euch beiden und das ihr euch die Zeit genommen habt die Links für rauszusuchen!


    Tatsächlich war dies das Stichwort mit den FDateTime Constructors.
    Im Blueprint System wär das mit einer "Now" Note und dort dann "Get Hour, Get Day " usw um die System Zeit rauszuholen.

  • Also am PC funktioniert es das er sieht wie die Aktuelle Zeit ist, wann das Programm geschlossen wurde und die umrechnung wieviel Minuten dazwischen war.
    Jedoch zeigt er nur auf dem Android die Aktuelle Zeit, alles andere lässt er einfach weg als wenn "Event End Play" beim schließen der App gar nicht gezündert werden würde. :/