2

サンプルアプリケーションを作成しました。私のアプリケーションでは、バックグラウンドで実行される 4 つActivityの s と 1つの s がありBroadCastRecieverます。ここでは、ユーザーが画面のロックを解除したときにアプリケーションを実行するためのサービスを記述しました。これを除いて、すべて正常に動作します:

アプリケーションを実行すると、3 番目のアクティビティになります。ユーザーは画面を操作しなくなるため、デバイスは自動画面ロックされます。画面のロックを解除すると、アプリケーションは最初のアクティビティから実行されます。ユーザーが最後に操作したアクティビティからアプリケーションを実行する必要があります (たとえば、ユーザーが 3 番目のアクティビティを操作した場合、画面のロックが解除されたときに 3 番目のアクティビティを表示する必要があります)。

4

2 に答える 2

1

問題ありません。SharedPreferences を使用して currentActivityName を保存してください。onCreate または onStart() を介して新しいアクティビティを入力するときに、これを更新します。この値は、アプリがシャットダウンしても保持されます。エントリ ポイントを検出したら、アプリが戻ったら startActivity(activityName) を実行します。

于 2012-09-29T03:21:46.453 に答える
1

あるアクティビティから別のアクティビティに移動するときにアクティビティを終了せず、Android マニフェスト ファイルに WAKE_LOCK 権限を追加します

于 2012-09-29T04:01:18.520 に答える