Android — Wie Sie richtig zu behandeln onPause/onResume Methoden?

Habe ich eine app, startet die Wiedergabe von sounds und beginnt bzw. wieder gameplay in der onResume () - Methode, aber was ich merke ist, dass wenn meine app war die Letzte Anwendung ausführen, wenn ich das Handy in den standby (Bildschirm aus), und ich drücken Sie einfach die Menü-Taste, um die Zeit zu überprüfen, dann das Telefon beginnt, das Spiel zu spielen und sounds im hintergrund (die app ist nicht wirklich sichtbar, nur der Bildschirm mit Datum/Uhrzeit, noch onResume benannt worden sein, die in meiner app). Was soll ich hier tun? Gibt es eine Möglichkeit zu erkennen, was eine Reaktivierung der app, und fügen Sie eine bedingte Anweisung, die nur dann startet das Spiel, wenn die app sichtbar sind?

Hier ist ein Ausschnitt aus meinem onResume:

@Override
    protected void onResume()
    {
        mySaveGame = Utilities.loadSavegame(this);

        //check the savegame
        if(mySaveGame!=null)
        {
            //start game using savegame values
            this.startFromSavedGame(mySaveGame.getIsLevelComplete());   
        }
        else
        {
            //run the 1st-run components
            this.startFirstRun();
        }

        super.onResume();
    }

Das einzige was ich mir vorstellen kann zu tun, um zu verhindern, dass das Spiel starten wenn der Bildschirm eingeschaltet wird (auch wenn die app nicht sichtbar) ist dieses.finish() die Letzte Zeile in onPause()... aber das zwingt Sie dazu, die app starten, jedes mal, wenn Sie wollen, um zurück zu gehen, weil der precess selbst getötet wurde (was in Ordnung ist, weil meine onPause speichert persistente Daten, aber es ist nicht eine elegante Lösung).

Bitte helfen.

InformationsquelleAutor RyanM | 2010-04-22
Schreibe einen Kommentar