2017-10-02 12 views
-3

私のAndroidコースでは今年から私たち自身が選択したアプリを作っています。アイデアの欠如のために、私はテキストアドベンチャースタイルのゲームに参加することに決めました。複雑すぎることはありません。私は創造的であることを確かめており、加速度計やカメラのような電話のさまざまな機能を組み込んでいます。しかし、私は逃げる。アプリを終了してもう一度起動したときに最後のアクティビティを続行するにはどうすればよいですか?

私はアプリの仕組みやコーディング方法を計画し始めましたが、かなり早い段階で障害を見つけて解決策を見つける必要があります。私はそれを作成してプレイヤーが活動から活動に送られるようにするつもりです。プレイヤーが進行するにつれて無限にスクロールする活動を行わない限り、私はそれを知る最善の方法だと思います。それで、プレイヤーが完全にアプリケーションを閉じると、シャットダウン前の最後のアクティビティで「続ける」ように、進捗状況が保存されるようにする必要があります。

これが可能かどうかわかりませんが、もしそうなら、他の方法で同じ結果を得ることができますか?

+0

「SharedPreferences」を使用して、ユーザーの状態を保存し、必要なときに取得することができます。この状態に基づいて正しい画面/アクティビティに進むロジックを実装するのはあなたの仕事です。 – Benjamin

+0

「ユーザー状態を保存する」と言うと、アクションが発生したときにユーザーが立っている画面/アクティビティが保存されますか? – PQuix

+0

ユーザーの状態をモデル化する方法はあなた次第です。たとえば、書籍リーダーアプリの場合、ユーザーがアプリを離れるときに最後に読んでいたページを保存し、戻ったときに同じページで再開することができます。 – Benjamin

答えて

0

開始アクティビティをプログラムで変更する方法はありません。ファイルに開始するアクティビティを保存し、アプリケーションが起動するたびに(メインアクティビティのonCreate()メソッドで)このアクティビティにリダイレクトすることができます。

hereと記載されています。

+0

さて、基本的に、私が思っていたことをするのは不可能です。私が始めたいと思う活動は、プレイヤーがアプリを起動するたびに変わるからです。 – PQuix

+0

ゲームでユーザーが進行するたびに、現在のアクティビティでファイルを更新できます。 –

0

誰かが示唆しているように、現在の状態(つまり:Activityは現在表示されているもの)をSharedPreferencesに保存します。ユーザーがアプリを起動すると、ルートActivity(ACTION = MAINとCATEGORY = LAUNCHERのあるルート)が開始されます。ルートActivityonCreate()には、SharedPreferencesから保存された状態を読み取り、すぐにそのActivityを起動します。

関連する問題