Android中Activity的四種啟動方式

DoonZhang發表於2021-01-02

Activity的啟動模式分為四種。(standard、singleTop、singTask、singleInstance);
啟動模式可在AndroidManifest.xml中,通過<activity>標籤的android:launchMode屬性設定。

一、standard模式
    特點:1.Activity的預設啟動模式
              2.每啟動一個Activity就會在棧頂建立一個新的例項。例如:鬧鐘程式
    缺點:當Activity已經位於棧頂時,而再次啟動Activity時還需要在建立一個新的例項,不能直接複用。

二、singleTop模式
    特點:該模式會判斷要啟動的Activity例項是否位於棧頂,如果位於棧頂直接複用,否則建立新的例項。 例如:瀏覽器的書籤
    缺點:如果Activity並未處於棧頂位置,則可能還會建立多個例項。

三、singleTask模式
    特點:使Activity在整個應用程式中只有一個例項。每次啟動Activity時系統首先檢查棧中是否存在當前Activity例項,如果存在
              則直接複用,並把當前Activity之上所有例項全部出棧。例如:瀏覽器主介面

四、singleInstance模式
    特點:該模式的Activity會啟動一個新的任務棧來管理Activity例項,並且該勢力在整個系統中只有一個。無論從那個任務棧中    啟動該Activity,都會是該Activity所在的任務棧轉移到前臺,從而使Activity顯示。主要作用是為了在不同程式中共享一個Activity
        例項。

總結:Activity 的四種啟動模式各有特色,在實際開發中,根據實際情況來選擇合適的啟動方式即可。

相關文章