我有一個包含2個主要活動的Android應用程序。當應用程序從頭開始時,兩個活動都會啓動並運行得很好。例如:A - > B。活動A完成A & B所需的所有初始化。在創建B之前,我始終創建了(onCreate)所有在真實硬件和仿真器上的本地測試。Android Activity stack onCreate order
但是,在我的應用程序的崩潰報告中,我看到一個異常,只能通過B在沒有或在A之前啓動來解釋。這可能嗎? Android會創建一個內部活動,而不會爲我的應用創建其他活動(B沒有A)?活動創建的順序是否保證(A然後是B)?我將如何使用模擬器或真實硬件重新創建這些場景中的任何一個?
無論首先啓動哪個Activity,我都可以輕鬆地將我的初始化代碼移動到工作位置,但是我想在進行更改之前學習如何重現和測試。我瀏覽了文檔,但它並沒有真正的幫助。
這裏是啓動任務B,當用戶按下代碼「播放」按鈕:
private void handlePlayTouch()
{
Intent intent = new Intent(getApplicationContext(), PlayActivity.class);
startActivity(intent);
}
如果您在按主頁按鈕後(也可能在調用onStop()之後恢復應用程序),它將不會恢復活動A的原始狀態。在任何情況下,每個活動都應該是完整的。 – Estel
你怎麼一次開始兩個活動?向我們展示一些代碼! – theomega
當用戶按下一個按鈕時,活動B開始,該按鈕將應用程序從「主屏幕」導航到「主屏幕」。 – raider33