我已經完成了一些搜索我的問題的公平的一點,但找不到解決我的確切問題的任何解決方案。防止Android應用程序開放的多個實例
我有一個應用程序,有3個活動陸續進行。主要活動(啓動時),第二個活動(大部分肉類和內臟都存活),然後是最終活動,或多或少是第二個活動中發生的情況的總結頁面。
我偶爾遇到這個問題,如果我保持第二個活動在後臺運行(關閉手機的屏幕或打回家),然後點擊啓動器圖標返回到應用程序,它創建一個新的實例,而不是返回到我在後臺運行的第二個活動。我找不到任何押韻或原因,爲什麼有時會發生,而不是其他原因(通常不會)。大多數情況下,我需要回到我的第二項活動,並且這個活動在世界上都很好,但有時它又引發了另一個實例。
是否有無論如何檢查一個實例是否正在運行,並總是返回到該實例,如果有?
當你說「Android應用程序的多個實例」時,我們在談論活動嗎?只能有一個應用程序實例。要回答您的問題,您首先需要了解活動生命週期以及與意圖一起使用的標誌,以控制活動在導航堆棧上的管理方式。您還應該瞭解,一旦活動進入後臺(在onPause()之後),下次活動進入前臺時,它可能是活動的新實例,並調用onCreate()。 – Simon
順便說一句,我應該補充說,你把你的活動放在後臺,你的整個應用程序可能會被殺死,並且當你再次點擊圖標時重新開始。這取決於你當時會發生什麼。 – Simon
我想他們是活動的新實例。我上面提到的第二個活動是播放音樂。所以我知道它永遠不會死,因爲即使當我的手機屏幕關閉時,它也會播放音樂。正如我之前所說的,大多數時候,當我在喚醒手機或從其他應用程序回來後點擊我的應用程序圖標時,它會將我帶到音樂播放的第二個活動中。但有時候,我會回到第一個活動,如果我再去第二個活動,這是它的一個新實例。我只是想避免這種情況發生,並且在點擊圖標時始終讓我參加第二項活動。 –