2 つの主要なアクティビティを備えた Android アプリがあります。アプリをゼロから開始すると、両方のアクティビティが開始され、正常に実行されます。のようなもの: A -> B. アクティビティ A は、A と B の両方に必要なすべての初期化を行います。実際のハードウェアとエミュレーターでのすべてのローカル テストでは、A は常に B が作成される前に作成 (onCreate) されます。
しかし、アプリのクラッシュ レポートに例外が表示されます。これは、B が A なしで、または A の前に開始されたことによってのみ説明できます。これは可能ですか? Android は、アプリの他のアクティビティを作成せずに内部アクティビティを作成しますか (A なしの B)? アクティビティの作成順序は保証されていますか (A から B)? エミュレーターまたは実際のハードウェアを使用して、これらのシナリオのいずれかをどのように再現しますか?
どのアクティビティが最初に開始されたかに関係なく、初期化コードを簡単に移動して動作させることができますが、変更を加える前に再現してテストする方法を学びたかったのです。ドキュメントに目を通しましたが、実際には役に立ちませんでした。
ユーザーが「再生」ボタンを押したときにタスク B を開始するコードは次のとおりです。
private void handlePlayTouch()
{
Intent intent = new Intent(getApplicationContext(), PlayActivity.class);
startActivity(intent);
}